第七章(数组)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
输入:;as?l%q95r/w0
输出:;?%95/0
#include <stdio.h>
#include <string.h>
void main()
{
char str[80];
char c;
int i;
i=0;
printf("\nPlease input the string: ");
while((c=getchar())!='\n')
j++;
}
}
t[j] = '\0';
printf("\n Original string: %s\n", str1);
printf("\n Result string: %s\n", t);
}
5.程序功能是统计输入字符串中小写英文字母的个数。
如:输入:abcdEFGHIJK123
输出:4
#include <stdio.h>
main()
{
int a[M],i;
printf("Please input 5 numbers:\n");
for(i=0; i<M; i++)
scanf("%d", &a[i]);
printf("Even numbers:\n" );
for(i=0; i<M; i++)
/**/if( a[i]/2 ==0)if( a[i]%2 ==0)/**/
{
/**/if(!c>='A'&&c<='Z'||c>='a'&&c<='z')if(!(c>='A'&&c<='Z'||c>='a'&&c<='z')) /**/
/**/str[i]=c;str[i++]=c; /**/
}
str[i]='\0';
puts(str);
getch();
}
12.修改程序,使其输出如下图形:
sum++;
}
printf("%d\n",sum);
getch();
}
6.程序功能是将从键盘依次输入的M个整数逆序输出。
如:输入:12 4 656 83 25 35 76 29
输出:29 76 35 25 83 656 4 12
#include <stdio.h>
#include <math.h>
#define M 8
}
2.将程序填写完整,该程序的功能是:用插入排序法对输入的10个整数按从大到小排序,输出排序结果。例如:
输入:2 9 3 4 8 4 1 6 5 7
输出:9 8 7 6 5 4 4 3 2 1
#include <stdio.h>
#include <conio.h>
void main()
{
int i,j,k,x;
int i,len, sum=0;
printf("Please input a string:\n");
scanf("%s", str1);
len = strlen(str1);
for(i=0; i<len; i++)
{Fra Baidu bibliotek
if( str1[i] >= 'A' && str1[i] <= 'Z')
/**/sum--;sum++;/**/
for(i=0;i<10;i++)
sum+=s[i];
aver=sum/10;
sum=0.0;
for(i=0;i<10;i++)
if(s[i]>aver)
sum+=s[i];
printf("sum=%f\n",sum);
getch();
}
11.修改程序,使其实现功能:输入一个字符串,依次输出其中的所有非字母字符。例如:
#include <stdio.h>
#define N 5
void main()
{
int /**/a[N,N]a[N][N] /**/;
int i,j;
for(i=0;i<N;i++)
{for(j=0;j<N;j++)
{if(/**/j>=ij>i/**/)
a[i][j]=0;
else
/**/a[i][j]=i+2-ja[i][j]=i+1-j /**/;
1.补充程序,该程序的功能是将输入的一行字符中的大写字母转变为相应的小写字母,小写字母则转变为相应的大写字母,其余字符不变。
#include <stdio.h>
void main()
{ char s[80];
int i;
printf("Please input a string: ");
for(i=0;((s[i]=getchar())!='\n')&&(i<80);i++);
main()
{
char str1[128], str2[128];
int i,len;
gets(str1);
len = strlen(str1);
/**/for(i=0; i>len; i++)for(i=0; i<len; i++)/**/
{
if( str1[i] >= '0' && str1[i] <= '8')
则t所指的字符串为:4Z8z
#include <math.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
void main()
{ char str1[100], t[200];
int i, j;
/**/i = 0;j=0;/**/
clrscr();
#include <string.h>
main()
{
char str1[128];
/**/int i;len, sum=0;int i,len,sum=0;/**/
gets(str1);
len = strlen(str1);
for(i=0; i<len; i++)
{
/**/if( str1[i] >= 'a' || str1[i] <= 'z')if( str1[i] >= 'a'&&str1[i] <= 'z')/**/
str2[i] = str1[i] + 1;
else if(str1[i] == '9')
str2[i] = '0';
else
str2[i] = str1[i];
}
/**/str2[i] = '\n';str2[i] = '\0';/**/
puts(str2);
getch();
}
10.修改程序,实现从键盘输入10个数,输出大于平均值的所有数的总和。
s[i]='\0';
for(i=0;s[i]!='\0';/**/i++/**/)
{
if(s[i]>='a'&&s[i]<='z')
s[i]=s[i]-32;
else if(/**/ s[i]>='A'&&s[i]<='Z' /**/)
s[i]=s[i]+32;
printf("%c",s[i]);
}
printf("%d ", a[i]);
printf("\n" );
getch();
}
9.程序功能是将输入字符串中’0’~’8’的数字字符变为比它大1的数字字符,将’9’变为’0’。
如:输入:ab12cd56EF89GH4
输出:ab23cd67EF90GH5
#include <stdio.h>
#include <string.h>
main()
{ int a[M],i;
printf("Please input 8 numbers:\n");
for(i=0; i<M; i++)
scanf("%d", /**/a[i]&a[i]/**/);
printf("Inverse order is: \n");
/**/for(i=M-1; i<=0; i--)for(i=M-1; i>=0; i--)/**/
#include <stdio.h>
void main()
{
int i,n=0;
/**/float s[9],sum=1.0,aver;float s[10],sum=0.0,aver; /**/
printf("Please input sampler:\n");
for(i=0;i<10;i++)
scanf("%f",/**/s[i]&s[i] /**/);
printf("%d ", a[i]);
printf("\n" );
getch();
}
7.程序功能是统计输入字符串中大写英文字母的个数。
如:输入:abcDEFGH123
输出:5
#include <stdio.h>
#include <string.h>
main()
{
/**/char str1char str1[128]/**/;
strcpy(str1, "4AZ18c?Ge9a0z!");
for (i = 0; i<strlen(str1); i++)
{
/**/if ((str1[i] %2== 0) && (i%2=0))if ((str1[i] %2== 0) && (i%2==0))/**/
{
t[j] = str1[i];
for(j=k; /**/ j>i /**/; j--)
a[j]=a[j-1];
}
a[i]=x;
}
for(i=0;i<10;i++)
printf("%d ",a[i]);
getch();
}
3.补充程序Ccon061.c,使其实现从键盘输入一个4行4列的二维数组表示4*4阶矩阵,并计算第1列元素之和。
}
printf("%d\n",sum);
getch();
}
8.程序功能是实现从键盘依次输入M个整数,输出其中所有的偶数。
如:输入:23 62 38 45 26
输出:62 38 26
#include <stdio.h>
#include <math.h>
/**/#include M 5#define M 5/**/
printf("%3d",a[i][j]);
}
printf("\n");
}
getch();
}
#include <stdio.h>
#include <math.h>
main()
{
int i,/**/j/**/;
int a[4][4],sum;
sum=/**/0/**/;
printf("Please input 16 numbers:\n");
for(i=0; i<4;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
for(i=0;i<4;i++)
/**/sum=sum+a[i][0];/**/
printf("%d\n",sum);
getch();
}
4.程序功能是:从字符串数组str1中取出ASCII码值为偶数且下标为偶数的字符依次存放到字符串t中。
例如,若str1所指的字符串为:4AZ18c?Ge9a0z!
/**/ int a[10]; /**/
printf("Enter 10 numbers:");
scanf("%d",&x);
a[0]=x;
for(k=1; k<=9; k++)
{ scanf("%d",&x);
for(i=0; i<k; i++)
if (a[i]<x) break;
if(i<k)
{
输出:;?%95/0
#include <stdio.h>
#include <string.h>
void main()
{
char str[80];
char c;
int i;
i=0;
printf("\nPlease input the string: ");
while((c=getchar())!='\n')
j++;
}
}
t[j] = '\0';
printf("\n Original string: %s\n", str1);
printf("\n Result string: %s\n", t);
}
5.程序功能是统计输入字符串中小写英文字母的个数。
如:输入:abcdEFGHIJK123
输出:4
#include <stdio.h>
main()
{
int a[M],i;
printf("Please input 5 numbers:\n");
for(i=0; i<M; i++)
scanf("%d", &a[i]);
printf("Even numbers:\n" );
for(i=0; i<M; i++)
/**/if( a[i]/2 ==0)if( a[i]%2 ==0)/**/
{
/**/if(!c>='A'&&c<='Z'||c>='a'&&c<='z')if(!(c>='A'&&c<='Z'||c>='a'&&c<='z')) /**/
/**/str[i]=c;str[i++]=c; /**/
}
str[i]='\0';
puts(str);
getch();
}
12.修改程序,使其输出如下图形:
sum++;
}
printf("%d\n",sum);
getch();
}
6.程序功能是将从键盘依次输入的M个整数逆序输出。
如:输入:12 4 656 83 25 35 76 29
输出:29 76 35 25 83 656 4 12
#include <stdio.h>
#include <math.h>
#define M 8
}
2.将程序填写完整,该程序的功能是:用插入排序法对输入的10个整数按从大到小排序,输出排序结果。例如:
输入:2 9 3 4 8 4 1 6 5 7
输出:9 8 7 6 5 4 4 3 2 1
#include <stdio.h>
#include <conio.h>
void main()
{
int i,j,k,x;
int i,len, sum=0;
printf("Please input a string:\n");
scanf("%s", str1);
len = strlen(str1);
for(i=0; i<len; i++)
{Fra Baidu bibliotek
if( str1[i] >= 'A' && str1[i] <= 'Z')
/**/sum--;sum++;/**/
for(i=0;i<10;i++)
sum+=s[i];
aver=sum/10;
sum=0.0;
for(i=0;i<10;i++)
if(s[i]>aver)
sum+=s[i];
printf("sum=%f\n",sum);
getch();
}
11.修改程序,使其实现功能:输入一个字符串,依次输出其中的所有非字母字符。例如:
#include <stdio.h>
#define N 5
void main()
{
int /**/a[N,N]a[N][N] /**/;
int i,j;
for(i=0;i<N;i++)
{for(j=0;j<N;j++)
{if(/**/j>=ij>i/**/)
a[i][j]=0;
else
/**/a[i][j]=i+2-ja[i][j]=i+1-j /**/;
1.补充程序,该程序的功能是将输入的一行字符中的大写字母转变为相应的小写字母,小写字母则转变为相应的大写字母,其余字符不变。
#include <stdio.h>
void main()
{ char s[80];
int i;
printf("Please input a string: ");
for(i=0;((s[i]=getchar())!='\n')&&(i<80);i++);
main()
{
char str1[128], str2[128];
int i,len;
gets(str1);
len = strlen(str1);
/**/for(i=0; i>len; i++)for(i=0; i<len; i++)/**/
{
if( str1[i] >= '0' && str1[i] <= '8')
则t所指的字符串为:4Z8z
#include <math.h>
#include <stdio.h>
#include <string.h>
#include <conio.h>
void main()
{ char str1[100], t[200];
int i, j;
/**/i = 0;j=0;/**/
clrscr();
#include <string.h>
main()
{
char str1[128];
/**/int i;len, sum=0;int i,len,sum=0;/**/
gets(str1);
len = strlen(str1);
for(i=0; i<len; i++)
{
/**/if( str1[i] >= 'a' || str1[i] <= 'z')if( str1[i] >= 'a'&&str1[i] <= 'z')/**/
str2[i] = str1[i] + 1;
else if(str1[i] == '9')
str2[i] = '0';
else
str2[i] = str1[i];
}
/**/str2[i] = '\n';str2[i] = '\0';/**/
puts(str2);
getch();
}
10.修改程序,实现从键盘输入10个数,输出大于平均值的所有数的总和。
s[i]='\0';
for(i=0;s[i]!='\0';/**/i++/**/)
{
if(s[i]>='a'&&s[i]<='z')
s[i]=s[i]-32;
else if(/**/ s[i]>='A'&&s[i]<='Z' /**/)
s[i]=s[i]+32;
printf("%c",s[i]);
}
printf("%d ", a[i]);
printf("\n" );
getch();
}
9.程序功能是将输入字符串中’0’~’8’的数字字符变为比它大1的数字字符,将’9’变为’0’。
如:输入:ab12cd56EF89GH4
输出:ab23cd67EF90GH5
#include <stdio.h>
#include <string.h>
main()
{ int a[M],i;
printf("Please input 8 numbers:\n");
for(i=0; i<M; i++)
scanf("%d", /**/a[i]&a[i]/**/);
printf("Inverse order is: \n");
/**/for(i=M-1; i<=0; i--)for(i=M-1; i>=0; i--)/**/
#include <stdio.h>
void main()
{
int i,n=0;
/**/float s[9],sum=1.0,aver;float s[10],sum=0.0,aver; /**/
printf("Please input sampler:\n");
for(i=0;i<10;i++)
scanf("%f",/**/s[i]&s[i] /**/);
printf("%d ", a[i]);
printf("\n" );
getch();
}
7.程序功能是统计输入字符串中大写英文字母的个数。
如:输入:abcDEFGH123
输出:5
#include <stdio.h>
#include <string.h>
main()
{
/**/char str1char str1[128]/**/;
strcpy(str1, "4AZ18c?Ge9a0z!");
for (i = 0; i<strlen(str1); i++)
{
/**/if ((str1[i] %2== 0) && (i%2=0))if ((str1[i] %2== 0) && (i%2==0))/**/
{
t[j] = str1[i];
for(j=k; /**/ j>i /**/; j--)
a[j]=a[j-1];
}
a[i]=x;
}
for(i=0;i<10;i++)
printf("%d ",a[i]);
getch();
}
3.补充程序Ccon061.c,使其实现从键盘输入一个4行4列的二维数组表示4*4阶矩阵,并计算第1列元素之和。
}
printf("%d\n",sum);
getch();
}
8.程序功能是实现从键盘依次输入M个整数,输出其中所有的偶数。
如:输入:23 62 38 45 26
输出:62 38 26
#include <stdio.h>
#include <math.h>
/**/#include M 5#define M 5/**/
printf("%3d",a[i][j]);
}
printf("\n");
}
getch();
}
#include <stdio.h>
#include <math.h>
main()
{
int i,/**/j/**/;
int a[4][4],sum;
sum=/**/0/**/;
printf("Please input 16 numbers:\n");
for(i=0; i<4;i++)
for(j=0;j<4;j++)
scanf("%d",&a[i][j]);
for(i=0;i<4;i++)
/**/sum=sum+a[i][0];/**/
printf("%d\n",sum);
getch();
}
4.程序功能是:从字符串数组str1中取出ASCII码值为偶数且下标为偶数的字符依次存放到字符串t中。
例如,若str1所指的字符串为:4AZ18c?Ge9a0z!
/**/ int a[10]; /**/
printf("Enter 10 numbers:");
scanf("%d",&x);
a[0]=x;
for(k=1; k<=9; k++)
{ scanf("%d",&x);
for(i=0; i<k; i++)
if (a[i]<x) break;
if(i<k)
{