C语言数组
来源:互联网 发布:东软数据库安全审计 编辑:程序博客网 时间:2024/06/06 17:12
从键盘上接收一个字符串,保存到一个字符数组中。
然后从后面往前倒序输出这个字符串。例如:接收字符串为:“Jone”,则输出结果为“enoJ”。#include <stdio.h>
#include <stdlib.h>
int main(void){
char arr[10];
int n;
printf("输入一个字符串:");
fflush(stdout);
gets(arr);
n=strlen(arr);
for(;n>=0;n--)
printf("%c",arr[n]);
return EXIT_SUCCESS;
}
(3) 分别使用char数组和string类对象实现下面任务:
(4) 编写一个程序,首先要求用户输入姓,然后输入名,然后使用一个逗号和空格将姓和名组合在一起,并存储和显示组合好的结果和结果的长度。下面是程序运行时的情形:
(5) Enter your first name: Li
(6) Enter your last name: Ming
(7) The name is: Li, Ming
(8) The length of name: 8
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(void){
char arr[10];
char arr2[10];
int age;
printf("Enter your first name:\n");
fflush(stdout);
scanf("%s",arr);
printf("Enter your last name:\n");
fflush(stdout);
scanf("%s",arr2);
strcat(arr,", ");
printf("The name is:%s\n",strcat(arr,arr2));
printf("The length of name:%d",strlen(arr));
return EXIT_SUCCESS;
}
从键盘上接收一个字符串,并统计其中字符的个数。
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(void){
char arr[20];
printf("请输入一个字符串:\n");
fflush(stdout);
gets(arr);
printf("其中字符的个数:%d",strlen(arr));
return EXIT_SUCCESS;
}
按照下面要求完成程序:
(1) 定义一个char数组address,使用memset对它进行初始化。
(2) 从键盘上接收一个字符串,保存到address中。
(3) 再从键盘上接收一个字符保存到字符变量findChar中。
(4) 要求从address中查找是否有字符findChar,输出找到的次数。例如:字符串为“ABCDEDS”,如果要查找字符‘D’,则应该输出2;如果要查找字符‘X’,则需要输出没有找到。
#include <stdio.h>
int main(void){
int i,sum=0;
char address[20];
memset(address, '\0', 20);
printf("请输入一个字符串:\n");
fflush(stdout);
gets(address);
char findChar;
printf("请再输入一个字符:\n");
fflush(stdout);
scanf("%c", &findChar);
for (i = 0; i < strlen(address); i++) {
if (address[i] == findChar) {
sum++;
}
}
if (sum!= 0) {
printf("查找到了:%d", sum);
} else {
printf("没有找到!");
}
(1) 定义一个包含有5个元素的int数组,并且初始化为0;
(2) 从键盘上接收5个整数,依次保存到int数组中。
(3) 要求你想办法,把数组的元素值倒序过来存储。例如:从键盘上接收数据后,数组元素存储的顺序依次为:
10 20 30 22 35
则在做完操作后使数组元素存储的顺序应该为:
35 22 30 20 10
(4) 完成倒序存储操作后,输出数组所有元素的值。
#include <stdio.h>
int main(void){
int arr[5] = { 0 };
int i;
printf("请输入5个整数:\n");
fflush(stdout);
for (i = 0; i < 5; i++) {
scanf("%d", &arr[i]);
printf("%d,", arr[i]);
}
printf("\n");
for (i = 4; i >= 0; i--) {
printf("%d,", arr[i]);
}
return EXIT_SUCCESS;
}
输入一行字符,统计其中单词的个数,输入的单词之间用空格隔开。
#include <stdio.h>
#include<string.h>
#include <stdlib.h>
int main(void){
char arr[100];
int i,num=0,words=0;
printf("请输入一行字符");
fflush(stdout);
gets(arr);
for(i=0;i<strlen(arr);i++){
if(arr[i]==' '){
words=0;
}else if(words==0){
num++;
words=1;
}
}
printf("单词的个数是:%d\n",num);
return EXIT_SUCCESS;
}
编写一个程序,将字符数组上s2中的全部字符复制到字符数组s1中。不应用strcpy函数。
#include <stdio.h>
#include <stdlib.h>
int main(void){
char s1[80],s2[80];
int i;
printf("输出s2:");
scanf("%s",s2);
for(i=0;i<strlen(s2);i++)
s1[i]=s2[i];
printf("s1:%s\n",s1);
return EXIT_SUCCESS;
}
编写一程序,将两个字符串连接起来,s1接在s2的后面。
不应用strcat函数。
#include <stdio.h>
#include <stdlib.h>
int main(void){
int i,j;
char s1[100],s2[100],s3[100];
gets(s1);
gets(s2);
for(i=0;s1[i]!='\0';i++)
s3[i]=s1[i];
for(j=0;s2[j]!='\0';j++)
s3[j+i]=s2[j];
printf("%s\n%s\n%s\n",s1,s2,s3);
return EXIT_SUCCESS;
}
应用二维数组数组输出棱形,(提示,*是字符)
*
***
*****
***
*
#include <stdio.h>
void main()
{
int i,j,k,l;
for(i=4,l=1;i>0;i--,l++)
{for(j=1;j<i;j++)
printf(" ");
for(k=1;k<=2*l-1;k++)
printf(" *");
printf("\n");
}
for(i=1,l=3;i<4;i++,l--)
{for(j=0;j<i;j++)
printf(" ");
for(k=1;k<=2*l-1;k++)
printf(" *");
printf("\n");
}
}
- C语言动态数组
- C语言的数组
- c语言 数组 指针
- c语言数组详解
- C语言字符数组
- C语言--指针,数组
- C语言变长数组
- C语言数组
- C语言数组
- 【C语言】数组--待续
- C语言数组
- C语言 数组拆分
- c语言 动态数组
- C语言数组
- C语言:数组
- c语言指针数组
- c 语言数组
- C语言变长数组
- 函数应用
- Oracle RAC 备份和恢复Voting Disks(10g)
- poj1548 Robots
- 如何检查C++中的内存泄漏
- ASP.Net中
- C语言数组
- 手把手教你安装DB2 (Linux版)
- 第九章 c语言函数(二)
- 简单的计算器------加减乘除
- Device Driver 驱动程序
- gcc实践(1): warning: suggest parentheses around assignment used as truth value [-Wparentheses]
- HDU 1274 展开字符串
- C#窗体定时执行任务
- 2013-03-13 关于标准库中map的erase()方法