C语言主观试题典型例题分析.docx
《C语言主观试题典型例题分析.docx》由会员分享,可在线阅读,更多相关《C语言主观试题典型例题分析.docx(33页珍藏版)》请在冰豆网上搜索。
C语言主观试题典型例题分析
1.给三角形三边长,编写程序求三角形面积:
#include
main()
{
floata,b,c,s,area;
scanf("%f%f%f",&a,&b,&c);
s=(a+b+c)/2;
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("您输入的三边长为:
%.2f,%.2f,%.2f\n",a,b,c);
printf("三角形的面积为:
%f\n",area);
}
2.输出九九乘法表:
inti,j;
for(i=1;i<=9;i++)
for(j=1;j<=9;j++)
printf("%d*%d=%d",i,j,i*j);
3.求一个整数的绝对值;
inta,B;
printf("Pleaseinputanumber:
\n");
scanf("%d",&a);
if(a>0)
B=a;
else
B=-a;
printf("该数的绝对值为%d\n",B);
4.编写一个程序,求1+2+3····+100的值;
inti,sum=0;
for(i=1;i<=100;i++)
sum=sum+i;
printf("%d\n",sum);
5.编写一个程序,计算1*2*3···*n的值;
longsum=1;
inti,n;
printf("Pleaseinputn:
scanf("%d",&n);
for(i=1;i<=n;i++)
sum=sum*i;
printf("%d!
=%d\n",n,sum);
6.编写一个程序,输出三个任意整数的最大值;
做法一:
inta,b,c,max;
printf("请输入任意的三个正整数:
scanf("%d%d%d",&a,&b,&c);
max=a;
if(max
max=b;
if(maxmax=c;printf("三个数的最大值是:%d\n",max);}做法二:调用函数的方法#includemain(){inta,b,c,D;printf("请输入任意的三个正整数:\n");scanf("%d%d%d",&a,&b,&c);D=max(a,b,c);printf("三个数的最大值是:%d\n",D);}intmax(intx,inty,intz){if(x>z)z=x;if(y>z)z=y;return(z);}7.用起泡法对10个数据进行排序;(利用数组实现)#includemain(){inti,j,t;inta[10]={5,7,4,2,3,6,1,0,9,8};for(j=0;j<9;j++){for(i=0;i<9-j;i++){if(a[i]>a[i+1])【修改‘>’和‘<’可以实现从大到小或从小到大的输出】{t=a[i];a[i]=a[i+1];a[i+1]=t;}}}for(i=0;i<10;i++)printf("%2d",a[i]);}8.输入10个数字,逆序输出。(数组实现)#includemain(){inta[10],i,t;for(i=0;i<=9;i++){scanf("%d",&a[i]);}for(i=0;i<=9;i++){t=a[9-i];printf("%2d",t);}}9.输入一行字符,将所有的小写字母转换成大写字母,大写字母转换成小写字母,其他字符不变,。输出转变后的这行字符;#include#definen10main(){inti;charch,a[n];for(i=0;i<=n-1;i++){scanf("%c",&a[i]);}for(i=0;i<=n-1;i++){if(a[i]<='z'&&a[i]>='a'){ch=a[i]-32;printf("%c",ch);}elseif(a[i]<='Z'&&a[i]>='A'){ch=a[i]+32;printf("%c",ch);}else{ch=a[i];printf("%c",ch);}}}10.编写一个程序,实现对两个数的四则运算;#includemain(){floatx,y;charop;printf("typeinyourexpression:\n");scanf("%f%c%f",&x,&op,&y);switch(op){case'+':printf("%f%c%f=%f\n",x,op,y,x+y);break;case'-':printf("%f%c%f=%f\n",x,op,y,x-y);break;case'*':printf("%f%c%f=%f\n",x,op,y,x*y);break;case'/':if(y==0)printf("error!\n");elseprintf("%f%c%f=%f\n",x,op,y,x/y);break;default:printf("expressionerror!\n");}}11.在编写一个顺序结构的过程中遇到的问题(关于if和elseif的用法;式子中平方的表示方法)#include#includemain(){floatx,y;printf("请输入x的值:\n");scanf("%f",&x);if(x<1)y=x*x+2*x+sin(x);elseif(x<=10)y=2*x-1;elsey=sqrt(2*x*x*x-11);printf("%f\n",y);}12.编写一个程序,根据三角形的三边判定三角形的类型(等边三角形、等腰三角形、直角三角形、一般三角形),并求其面积。#include#includemain(){floata,b,c,s,area;printf("请输入三角形的三边长:\n");scanf("%f%f%f",&a,&b,&c);if(a+b>c&&a+c>b&&b+c>a){s=(a+b+c)/2.0;area=sqrt(s*(s-a)*(s-b)*(s-c));printf("此三角形的面积为:%f\n",area);if(a==b&&b==c)printf("此三角形为等边三角形\n");elseif(a==b||a==c||b==c)printf("此三角形为等腰三角形\n");elseif(a*a+b*b==c*c||a*a+c*c==b*b||c*c+b*b==a*a)printf("此三角形为直角三角形\n");elseprintf("此三角形为一般三角形\n");}elseprintf("不能构成三角形\n");}13.编写一个程序,判断输入的字符是字母、数字或是其他字符。#includemain(){chara;printf("请任意输入一个字符:\n");scanf("%c",&a);if(('A'<=a&&a<='Z')||('a'<=a&&a<='z'))printf("%c是字母\n",a);elseif('0'<=a&&a<='9')printf("%c是数字\n",a);elseprintf("%c是其他字符\n",a);}14.编写一个程序,根据输入的月份,输出2009年该月有多少天?#includemain(){intday;intmonth;printf("Pleaseinputthemonth:\n");scanf("%d",&month);switch(month){case1:case3:case5:case7:case8:case10:case12:day=31;break;case2:day=28;break;case4:case6:case9:case11:day=30;break;default:day=-1;break;}if(day==-1)printf("invalidmonthinput!\n");elseprintf("2009年%d月有%d天\n",month,day);}15.编写程序,分别统计输入的整数中负数和正数的个数;#includemain(){intsum1=0,sum2=0,n;printf("请输入一组数:\n");scanf("%d",&n);while(n!=0){if(n<0)sum1=sum1+1;elsesum2=sum2+1;scanf("%d",&n);}printf("sum1=%d,sum2=%d\n",sum1,sum2);}16.编写一个程序,统计1~100之间是3或5的倍数的数的个数;做法一:#includemain(){inti,sum=0;for(i=1;i<=100;i++){if(i%3==0||i%5==0)sum=sum+1;}printf("%d\n",sum);}做法二:#includemain(){inti=1,sum=0;do{if(i%3==0||i%5==0)sum=sum+1;i++;}while(i<=100);printf("1~100之间是3或5的倍数的数的个数是:%d\n",sum);}17.编写一个程序,输出正整数1到10的平方和;#includemain(){inti,n;longsum=0;printf("Pleaseinputn:\n");scanf("%d",&n);for(i=1;i<=n;i++){sum=sum+i*i;}printf("1*1+2*2+3*3+···+%d*%d=%d\n",n,n,sum);}18.编写一个程序,是的他们按从小到大的顺序输出;#includemain(){inta,b,c,t;scanf("%d%d%d",&a,&b,&c);if(a>b){t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(b>c){t=b;b=c;c=t;}printf("%d,%d,%d\n",a,b,c);}19.编写一个程序,输出1~100内的所有素数;#includeintf(intn)/*有返回值的不能用viod*/{inti;for(i=2;i<=n/2;i++)if(n%i==0)return0;return1;}voidmain(){inti,count=0;for(i=2;i<=100;i++)if(f(i)==1){printf("%4d",i);count++;if(count%5==0)printf("\n");/*一行输入5个数*/}printf("\n");}20.判断并输出所有三位数中的水仙花数;(水仙花数,例:153=1³+5³+3³)#includemain(){inta,b,c,n;for(n=101;n<1000;n++){a=n%10;b=((n-a)/10)%10;c=((n-10*b-a)/100)%10;if(n==a*a*a+b*b*b+c*c*c)printf("%5d",n);}}21.编写一个程序,输出1~100的所有素数;#includeintf(intn)/*有返回值的不能用viod*/{inti;for(i=2;i<=n/2;i++)if(n%i==0)return0;return1;}voidmain(){inti,count=0;for(i=2;i<=100;i++)if(f(i)==1){printf("%4d",i);count++;if(count%5==0)printf("\n");/*一行输入5个数*/}printf("\n");}22.编写一个程序,输出用数字0~9可以组成的三位奇数及其个数;#includemain(){inti,j,k,num,count=0;for(i=1;i<=9;i++){for(j=0;j<=9;j++){for(k=1;k<=9;k=k+2){if(i!=j&&j!=k&&i!=k){num=100*i+10*j+k;count++;printf("%4d",num);if(count%8==0)printf("\n");}}}}printf("\n三位奇数的总数为:%d\n",count);}23.编写一个程序,输入10个同学的成绩,求出其最高分,最低分,和平均值;#includemain(){inti;floata[10],max,min,aver=0;for(i=0;i<=9;i++){scanf("%f",&a[i]);}max=min=a[0];for(i=0;i<=9;i++){if(a[i]min=a[i];if(a[i]>max)max=a[i];aver+=a[i];}printf("平均成绩为:%f\n",aver/10);printf("最高成绩为:%f,最低成绩为:%f\n",max,min);}24.编写一个程序,删除数组中指定的第n个元素;#includemain(){inti,a[10],n;for(i=0;i<=9;i++){scanf("%d",&a[i]);}printf("请输入要删除第几个数:\n");scanf("%d",&n);for(i=n;i<=9;i++){a[i-1]=a[i];}a[9]=0;for(i=0;i<=8;i++)printf("%3d\n",a[i]);}25.编写一个程序,输出Fibonacci数列的前二十项;#includemain(){inta[20]={1,1},i;for(i=2;i<20;i++){a[i]=a[i-2]+a[i-1];}for(i=0;i<20;i++){printf("%5d",a[i]);if(i%4==0)printf("\n");}printf("\n");}26.编写一个程序,输出数组中小于5的数;#includemain(){inta[10]={21,32,2,14,5,25,39,51,8,12},*p;intcount=0;for(p=a;p{if(*p<20)printf("%d\t",*p);if(++count==10)break;}}27.利用指针法,对数组中的元素加一;#includemain(){inta[20]={1,3,5,7,9},i,*p;for(p=a;p{printf("%4d",*p);}printf("\n");for(p=a;p{*p=*p+1;printf("%4d",*p);}printf("\n");}28.用指针法实现一组整数的输入,并统计其中偶数和奇数的个数;#includemain(){inta[10]={0,2,3,4,5,6,7,8,14,10};int*p,i=0,j=0;for(p=a;p{if(*p%2==0)i=i+1;elsej=j+1;}printf("奇数的个数为%d,偶数的个数为:%d\n",j,i);}29.利用多维数组,输出一个简单图形;******#includemain(){inti,j;inta[3][3]={{'','','*'},{'','*','*'},{'*','*','*'}};for(i=0;i<3;i++){for(j=0;j<3;j++){printf("%c",a[i][j]);}printf("\n");}}30.字符串的简单输出;#includemain(){chars[]="welcometochina!";inti;printf("%c%c%c\n",s[1],s[2],s[3]);for(i=0;s[i]!='\0';i++)printf("%c",s[i]);printf("\n");}31.编写一个用于实现strcmp功能的程序,对于用户所输入的两个字符串,如果;两个字符串相等,则输出零;如如果字符串1大于字符串2,则输出正数;如果字符串1小于字符串2,则输出负数;#includemain(){chars1[100],s2[100];inti,s3;printf("Pleaseinputfirststring:\n");gets(s1);printf("Pleaseinputsecondstring:\n");gets(s2);for(i=0;;i++){s3=s1[i]-s2[i];if(s3!=0)break;if(s1[i]=='\0')break;}if(s3>0)printf("%s>%s\n",s1,s2);elseif(s3<0)printf("%s<%s\n",s1,s2);elseprintf("%s=%s\n",s1,s2);}32.编写一个程序,将两个字符串连在一起,(实现stract)函数的功能;#includemain(){chars1[40],s2[20],*p1,*p2;p1=s1;p2=s2;gets(s1);gets(s2);while(*p1)p1++;while(*p1++=*p2++);puts(s1);}33.输入一个m*n的整形矩阵,将矩阵中最大的元素所在的行和最小元素所在的行互换后在输出矩阵(m,n要小于10)#includemain(){intm,n,i,j,max,min,l1=0,l2=0,t;inta[9][9];/*输入的数组的长度必须声明*/printf(“Pleaseinputmandn:\n”);scanf(“%d%d”,&m,&n);printf(“您输入的矩阵为:\n”);for(i=0;i{for(j=0;j{scanf(“%1d”,&a[i][j]);}}max=min=a[0][0];for(i=0;i{for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
max=c;
printf("三个数的最大值是:
%d\n",max);
做法二:
调用函数的方法
inta,b,c,D;
D=max(a,b,c);
%d\n",D);
intmax(intx,inty,intz)
if(x>z)
z=x;
if(y>z)
z=y;
return(z);
7.用起泡法对10个数据进行排序;(利用数组实现)
inti,j,t;
inta[10]={5,7,4,2,3,6,1,0,9,8};
for(j=0;j<9;j++)
for(i=0;i<9-j;i++)
if(a[i]>a[i+1])【修改‘>’和‘<’可以实现从大到小或从小到大的输出】
t=a[i];
a[i]=a[i+1];
a[i+1]=t;
for(i=0;i<10;i++)
printf("%2d",a[i]);
8.输入10个数字,逆序输出。
(数组实现)
inta[10],i,t;
for(i=0;i<=9;i++)
scanf("%d",&a[i]);
t=a[9-i];
printf("%2d",t);
9.输入一行字符,将所有的小写字母转换成大写字母,大写字母转换成小写字母,其他字符不变,。
输出转变后的这行字符;
#definen10
inti;
charch,a[n];
for(i=0;i<=n-1;i++)
scanf("%c",&a[i]);
if(a[i]<='z'&&a[i]>='a')
ch=a[i]-32;
printf("%c",ch);
elseif(a[i]<='Z'&&a[i]>='A')
ch=a[i]+32;
ch=a[i];
10.编写一个程序,实现对两个数的四则运算;
floatx,y;
charop;
printf("typeinyourexpression:
scanf("%f%c%f",&x,&op,&y);
switch(op)
case'+':
printf("%f%c%f=%f\n",x,op,y,x+y);
break;
case'-':
printf("%f%c%f=%f\n",x,op,y,x-y);
case'*':
printf("%f%c%f=%f\n",x,op,y,x*y);
case'/':
if(y==0)
printf("error!
printf("%f%c%f=%f\n",x,op,y,x/y);
default:
printf("expressionerror!
11.在编写一个顺序结构的过程中遇到的问题(关于if和elseif的用法;式子中平方的表示方法)
printf("请输入x的值:
scanf("%f",&x);
if(x<1)
y=x*x+2*x+sin(x);
elseif(x<=10)
y=2*x-1;
y=sqrt(2*x*x*x-11);
printf("%f\n",y);
12.编写一个程序,根据三角形的三边判定三角形的类型(等边三角形、等腰三角形、直角三角形、一般三角形),并求其面积。
printf("请输入三角形的三边长:
if(a+b>c&&a+c>b&&b+c>a)
s=(a+b+c)/2.0;
printf("此三角形的面积为:
if(a==b&&b==c)
printf("此三角形为等边三角形\n");
elseif(a==b||a==c||b==c)
printf("此三角形为等腰三角形\n");
elseif(a*a+b*b==c*c||a*a+c*c==b*b||c*c+b*b==a*a)
printf("此三角形为直角三角形\n");
printf("此三角形为一般三角形\n");
printf("不能构成三角形\n");
13.编写一个程序,判断输入的字符是字母、数字或是其他字符。
chara;
printf("请任意输入一个字符:
scanf("%c",&a);
if(('A'<=a&&a<='Z')||('a'<=a&&a<='z'))
printf("%c是字母\n",a);
elseif('0'<=a&&a<='9')
printf("%c是数字\n",a);
printf("%c是其他字符\n",a);
14.编写一个程序,根据输入的月份,输出2009年该月有多少天?
intday;
intmonth;
printf("Pleaseinputthemonth:
scanf("%d",&month);
switch(month)
case1:
case3:
case5:
case7:
case8:
case10:
case12:
day=31;break;
case2:
day=28;break;
case4:
case6:
case9:
case11:
day=30;break;
day=-1;break;
if(day==-1)
printf("invalidmonthinput!
printf("2009年%d月有%d天\n",month,day);
15.编写程序,分别统计输入的整数中负数和正数的个数;
intsum1=0,sum2=0,n;
printf("请输入一组数:
while(n!
=0)
if(n<0)
sum1=sum1+1;
sum2=sum2+1;
printf("sum1=%d,sum2=%d\n",sum1,sum2);
16.编写一个程序,统计1~100之间是3或5的倍数的数的个数;
if(i%3==0||i%5==0)
sum=sum+1;
inti=1,sum=0;
do
i++;
while(i<=100);
printf("1~100之间是3或5的倍数的数的个数是:
%d\n",sum);
17.编写一个程序,输出正整数1到10的平方和;
longsum=0;
sum=sum+i*i;
printf("1*1+2*2+3*3+···+%d*%d=%d\n",n,n,sum);
18.编写一个程序,是的他们按从小到大的顺序输出;
inta,b,c,t;
if(a>b)
{t=a;a=b;b=t;}
if(a>c)
{t=a;a=c;c=t;}
if(b>c)
{t=b;b=c;c=t;}
printf("%d,%d,%d\n",a,b,c);
19.编写一个程序,输出1~100内的所有素数;
intf(intn)/*有返回值的不能用viod*/
for(i=2;i<=n/2;i++)
if(n%i==0)
return0;
return1;
voidmain()
inti,count=0;
for(i=2;i<=100;i++)
if(f(i)==1)
printf("%4d",i);
count++;
if(count%5==0)
printf("\n");/*一行输入5个数*/
printf("\n");
20.判断并输出所有三位数中的水仙花数;(水仙花数,例:
153=1³+5³+3³)
inta,b,c,n;
for(n=101;n<1000;n++)
a=n%10;
b=((n-a)/10)%10;
c=((n-10*b-a)/100)%10;
if(n==a*a*a+b*b*b+c*c*c)
printf("%5d",n);
21.编写一个程序,输出1~100的所有素数;
22.编写一个程序,输出用数字0~9可以组成的三位奇数及其个数;
inti,j,k,num,count=0;
for(j=0;j<=9;j++)
for(k=1;k<=9;k=k+2)
if(i!
=j&&j!
=k&&i!
=k)
num=100*i+10*j+k;
printf("%4d",num);
if(count%8==0)
printf("\n三位奇数的总数为:
%d\n",count);
23.编写一个程序,输入10个同学的成绩,求出其最高分,最低分,和平均值;
floata[10],max,min,aver=0;
scanf("%f",&a[i]);
max=min=a[0];
if(a[i]min=a[i];if(a[i]>max)max=a[i];aver+=a[i];}printf("平均成绩为:%f\n",aver/10);printf("最高成绩为:%f,最低成绩为:%f\n",max,min);}24.编写一个程序,删除数组中指定的第n个元素;#includemain(){inti,a[10],n;for(i=0;i<=9;i++){scanf("%d",&a[i]);}printf("请输入要删除第几个数:\n");scanf("%d",&n);for(i=n;i<=9;i++){a[i-1]=a[i];}a[9]=0;for(i=0;i<=8;i++)printf("%3d\n",a[i]);}25.编写一个程序,输出Fibonacci数列的前二十项;#includemain(){inta[20]={1,1},i;for(i=2;i<20;i++){a[i]=a[i-2]+a[i-1];}for(i=0;i<20;i++){printf("%5d",a[i]);if(i%4==0)printf("\n");}printf("\n");}26.编写一个程序,输出数组中小于5的数;#includemain(){inta[10]={21,32,2,14,5,25,39,51,8,12},*p;intcount=0;for(p=a;p{if(*p<20)printf("%d\t",*p);if(++count==10)break;}}27.利用指针法,对数组中的元素加一;#includemain(){inta[20]={1,3,5,7,9},i,*p;for(p=a;p{printf("%4d",*p);}printf("\n");for(p=a;p{*p=*p+1;printf("%4d",*p);}printf("\n");}28.用指针法实现一组整数的输入,并统计其中偶数和奇数的个数;#includemain(){inta[10]={0,2,3,4,5,6,7,8,14,10};int*p,i=0,j=0;for(p=a;p{if(*p%2==0)i=i+1;elsej=j+1;}printf("奇数的个数为%d,偶数的个数为:%d\n",j,i);}29.利用多维数组,输出一个简单图形;******#includemain(){inti,j;inta[3][3]={{'','','*'},{'','*','*'},{'*','*','*'}};for(i=0;i<3;i++){for(j=0;j<3;j++){printf("%c",a[i][j]);}printf("\n");}}30.字符串的简单输出;#includemain(){chars[]="welcometochina!";inti;printf("%c%c%c\n",s[1],s[2],s[3]);for(i=0;s[i]!='\0';i++)printf("%c",s[i]);printf("\n");}31.编写一个用于实现strcmp功能的程序,对于用户所输入的两个字符串,如果;两个字符串相等,则输出零;如如果字符串1大于字符串2,则输出正数;如果字符串1小于字符串2,则输出负数;#includemain(){chars1[100],s2[100];inti,s3;printf("Pleaseinputfirststring:\n");gets(s1);printf("Pleaseinputsecondstring:\n");gets(s2);for(i=0;;i++){s3=s1[i]-s2[i];if(s3!=0)break;if(s1[i]=='\0')break;}if(s3>0)printf("%s>%s\n",s1,s2);elseif(s3<0)printf("%s<%s\n",s1,s2);elseprintf("%s=%s\n",s1,s2);}32.编写一个程序,将两个字符串连在一起,(实现stract)函数的功能;#includemain(){chars1[40],s2[20],*p1,*p2;p1=s1;p2=s2;gets(s1);gets(s2);while(*p1)p1++;while(*p1++=*p2++);puts(s1);}33.输入一个m*n的整形矩阵,将矩阵中最大的元素所在的行和最小元素所在的行互换后在输出矩阵(m,n要小于10)#includemain(){intm,n,i,j,max,min,l1=0,l2=0,t;inta[9][9];/*输入的数组的长度必须声明*/printf(“Pleaseinputmandn:\n”);scanf(“%d%d”,&m,&n);printf(“您输入的矩阵为:\n”);for(i=0;i{for(j=0;j{scanf(“%1d”,&a[i][j]);}}max=min=a[0][0];for(i=0;i{for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
min=a[i];
if(a[i]>max)
max=a[i];
aver+=a[i];
printf("平均成绩为:
%f\n",aver/10);
printf("最高成绩为:
%f,最低成绩为:
%f\n",max,min);
24.编写一个程序,删除数组中指定的第n个元素;
inti,a[10],n;
printf("请输入要删除第几个数:
for(i=n;i<=9;i++)
a[i-1]=a[i];
a[9]=0;
for(i=0;i<=8;i++)
printf("%3d\n",a[i]);
25.编写一个程序,输出Fibonacci数列的前二十项;
inta[20]={1,1},i;
for(i=2;i<20;i++)
a[i]=a[i-2]+a[i-1];
for(i=0;i<20;i++)
printf("%5d",a[i]);
if(i%4==0)
26.编写一个程序,输出数组中小于5的数;
inta[10]={21,32,2,14,5,25,39,51,8,12},*p;
intcount=0;
for(p=a;p{if(*p<20)printf("%d\t",*p);if(++count==10)break;}}27.利用指针法,对数组中的元素加一;#includemain(){inta[20]={1,3,5,7,9},i,*p;for(p=a;p{printf("%4d",*p);}printf("\n");for(p=a;p{*p=*p+1;printf("%4d",*p);}printf("\n");}28.用指针法实现一组整数的输入,并统计其中偶数和奇数的个数;#includemain(){inta[10]={0,2,3,4,5,6,7,8,14,10};int*p,i=0,j=0;for(p=a;p{if(*p%2==0)i=i+1;elsej=j+1;}printf("奇数的个数为%d,偶数的个数为:%d\n",j,i);}29.利用多维数组,输出一个简单图形;******#includemain(){inti,j;inta[3][3]={{'','','*'},{'','*','*'},{'*','*','*'}};for(i=0;i<3;i++){for(j=0;j<3;j++){printf("%c",a[i][j]);}printf("\n");}}30.字符串的简单输出;#includemain(){chars[]="welcometochina!";inti;printf("%c%c%c\n",s[1],s[2],s[3]);for(i=0;s[i]!='\0';i++)printf("%c",s[i]);printf("\n");}31.编写一个用于实现strcmp功能的程序,对于用户所输入的两个字符串,如果;两个字符串相等,则输出零;如如果字符串1大于字符串2,则输出正数;如果字符串1小于字符串2,则输出负数;#includemain(){chars1[100],s2[100];inti,s3;printf("Pleaseinputfirststring:\n");gets(s1);printf("Pleaseinputsecondstring:\n");gets(s2);for(i=0;;i++){s3=s1[i]-s2[i];if(s3!=0)break;if(s1[i]=='\0')break;}if(s3>0)printf("%s>%s\n",s1,s2);elseif(s3<0)printf("%s<%s\n",s1,s2);elseprintf("%s=%s\n",s1,s2);}32.编写一个程序,将两个字符串连在一起,(实现stract)函数的功能;#includemain(){chars1[40],s2[20],*p1,*p2;p1=s1;p2=s2;gets(s1);gets(s2);while(*p1)p1++;while(*p1++=*p2++);puts(s1);}33.输入一个m*n的整形矩阵,将矩阵中最大的元素所在的行和最小元素所在的行互换后在输出矩阵(m,n要小于10)#includemain(){intm,n,i,j,max,min,l1=0,l2=0,t;inta[9][9];/*输入的数组的长度必须声明*/printf(“Pleaseinputmandn:\n”);scanf(“%d%d”,&m,&n);printf(“您输入的矩阵为:\n”);for(i=0;i{for(j=0;j{scanf(“%1d”,&a[i][j]);}}max=min=a[0][0];for(i=0;i{for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
if(*p<20)
printf("%d\t",*p);
if(++count==10)
27.利用指针法,对数组中的元素加一;
inta[20]={1,3,5,7,9},i,*p;
for(p=a;p{printf("%4d",*p);}printf("\n");for(p=a;p{*p=*p+1;printf("%4d",*p);}printf("\n");}28.用指针法实现一组整数的输入,并统计其中偶数和奇数的个数;#includemain(){inta[10]={0,2,3,4,5,6,7,8,14,10};int*p,i=0,j=0;for(p=a;p{if(*p%2==0)i=i+1;elsej=j+1;}printf("奇数的个数为%d,偶数的个数为:%d\n",j,i);}29.利用多维数组,输出一个简单图形;******#includemain(){inti,j;inta[3][3]={{'','','*'},{'','*','*'},{'*','*','*'}};for(i=0;i<3;i++){for(j=0;j<3;j++){printf("%c",a[i][j]);}printf("\n");}}30.字符串的简单输出;#includemain(){chars[]="welcometochina!";inti;printf("%c%c%c\n",s[1],s[2],s[3]);for(i=0;s[i]!='\0';i++)printf("%c",s[i]);printf("\n");}31.编写一个用于实现strcmp功能的程序,对于用户所输入的两个字符串,如果;两个字符串相等,则输出零;如如果字符串1大于字符串2,则输出正数;如果字符串1小于字符串2,则输出负数;#includemain(){chars1[100],s2[100];inti,s3;printf("Pleaseinputfirststring:\n");gets(s1);printf("Pleaseinputsecondstring:\n");gets(s2);for(i=0;;i++){s3=s1[i]-s2[i];if(s3!=0)break;if(s1[i]=='\0')break;}if(s3>0)printf("%s>%s\n",s1,s2);elseif(s3<0)printf("%s<%s\n",s1,s2);elseprintf("%s=%s\n",s1,s2);}32.编写一个程序,将两个字符串连在一起,(实现stract)函数的功能;#includemain(){chars1[40],s2[20],*p1,*p2;p1=s1;p2=s2;gets(s1);gets(s2);while(*p1)p1++;while(*p1++=*p2++);puts(s1);}33.输入一个m*n的整形矩阵,将矩阵中最大的元素所在的行和最小元素所在的行互换后在输出矩阵(m,n要小于10)#includemain(){intm,n,i,j,max,min,l1=0,l2=0,t;inta[9][9];/*输入的数组的长度必须声明*/printf(“Pleaseinputmandn:\n”);scanf(“%d%d”,&m,&n);printf(“您输入的矩阵为:\n”);for(i=0;i{for(j=0;j{scanf(“%1d”,&a[i][j]);}}max=min=a[0][0];for(i=0;i{for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
printf("%4d",*p);
for(p=a;p{*p=*p+1;printf("%4d",*p);}printf("\n");}28.用指针法实现一组整数的输入,并统计其中偶数和奇数的个数;#includemain(){inta[10]={0,2,3,4,5,6,7,8,14,10};int*p,i=0,j=0;for(p=a;p{if(*p%2==0)i=i+1;elsej=j+1;}printf("奇数的个数为%d,偶数的个数为:%d\n",j,i);}29.利用多维数组,输出一个简单图形;******#includemain(){inti,j;inta[3][3]={{'','','*'},{'','*','*'},{'*','*','*'}};for(i=0;i<3;i++){for(j=0;j<3;j++){printf("%c",a[i][j]);}printf("\n");}}30.字符串的简单输出;#includemain(){chars[]="welcometochina!";inti;printf("%c%c%c\n",s[1],s[2],s[3]);for(i=0;s[i]!='\0';i++)printf("%c",s[i]);printf("\n");}31.编写一个用于实现strcmp功能的程序,对于用户所输入的两个字符串,如果;两个字符串相等,则输出零;如如果字符串1大于字符串2,则输出正数;如果字符串1小于字符串2,则输出负数;#includemain(){chars1[100],s2[100];inti,s3;printf("Pleaseinputfirststring:\n");gets(s1);printf("Pleaseinputsecondstring:\n");gets(s2);for(i=0;;i++){s3=s1[i]-s2[i];if(s3!=0)break;if(s1[i]=='\0')break;}if(s3>0)printf("%s>%s\n",s1,s2);elseif(s3<0)printf("%s<%s\n",s1,s2);elseprintf("%s=%s\n",s1,s2);}32.编写一个程序,将两个字符串连在一起,(实现stract)函数的功能;#includemain(){chars1[40],s2[20],*p1,*p2;p1=s1;p2=s2;gets(s1);gets(s2);while(*p1)p1++;while(*p1++=*p2++);puts(s1);}33.输入一个m*n的整形矩阵,将矩阵中最大的元素所在的行和最小元素所在的行互换后在输出矩阵(m,n要小于10)#includemain(){intm,n,i,j,max,min,l1=0,l2=0,t;inta[9][9];/*输入的数组的长度必须声明*/printf(“Pleaseinputmandn:\n”);scanf(“%d%d”,&m,&n);printf(“您输入的矩阵为:\n”);for(i=0;i{for(j=0;j{scanf(“%1d”,&a[i][j]);}}max=min=a[0][0];for(i=0;i{for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
*p=*p+1;
28.用指针法实现一组整数的输入,并统计其中偶数和奇数的个数;
inta[10]={0,2,3,4,5,6,7,8,14,10};
int*p,i=0,j=0;
for(p=a;p{if(*p%2==0)i=i+1;elsej=j+1;}printf("奇数的个数为%d,偶数的个数为:%d\n",j,i);}29.利用多维数组,输出一个简单图形;******#includemain(){inti,j;inta[3][3]={{'','','*'},{'','*','*'},{'*','*','*'}};for(i=0;i<3;i++){for(j=0;j<3;j++){printf("%c",a[i][j]);}printf("\n");}}30.字符串的简单输出;#includemain(){chars[]="welcometochina!";inti;printf("%c%c%c\n",s[1],s[2],s[3]);for(i=0;s[i]!='\0';i++)printf("%c",s[i]);printf("\n");}31.编写一个用于实现strcmp功能的程序,对于用户所输入的两个字符串,如果;两个字符串相等,则输出零;如如果字符串1大于字符串2,则输出正数;如果字符串1小于字符串2,则输出负数;#includemain(){chars1[100],s2[100];inti,s3;printf("Pleaseinputfirststring:\n");gets(s1);printf("Pleaseinputsecondstring:\n");gets(s2);for(i=0;;i++){s3=s1[i]-s2[i];if(s3!=0)break;if(s1[i]=='\0')break;}if(s3>0)printf("%s>%s\n",s1,s2);elseif(s3<0)printf("%s<%s\n",s1,s2);elseprintf("%s=%s\n",s1,s2);}32.编写一个程序,将两个字符串连在一起,(实现stract)函数的功能;#includemain(){chars1[40],s2[20],*p1,*p2;p1=s1;p2=s2;gets(s1);gets(s2);while(*p1)p1++;while(*p1++=*p2++);puts(s1);}33.输入一个m*n的整形矩阵,将矩阵中最大的元素所在的行和最小元素所在的行互换后在输出矩阵(m,n要小于10)#includemain(){intm,n,i,j,max,min,l1=0,l2=0,t;inta[9][9];/*输入的数组的长度必须声明*/printf(“Pleaseinputmandn:\n”);scanf(“%d%d”,&m,&n);printf(“您输入的矩阵为:\n”);for(i=0;i{for(j=0;j{scanf(“%1d”,&a[i][j]);}}max=min=a[0][0];for(i=0;i{for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
if(*p%2==0)
i=i+1;
j=j+1;
printf("奇数的个数为%d,偶数的个数为:
%d\n",j,i);
29.利用多维数组,输出一个简单图形;
*
**
***
inta[3][3]={{'','','*'},{'','*','*'},{'*','*','*'}};
for(i=0;i<3;i++)
for(j=0;j<3;j++)
printf("%c",a[i][j]);
30.字符串的简单输出;
chars[]="welcometochina!
";
printf("%c%c%c\n",s[1],s[2],s[3]);
for(i=0;s[i]!
='\0';i++)
printf("%c",s[i]);
31.编写一个用于实现strcmp功能的程序,对于用户所输入的两个字符串,如果;两个字符串相等,则输出零;如如果字符串1大于字符串2,则输出正数;如果字符串1小于字符串2,则输出负数;
chars1[100],s2[100];
inti,s3;
printf("Pleaseinputfirststring:
gets(s1);
printf("Pleaseinputsecondstring:
gets(s2);
for(i=0;;i++)
s3=s1[i]-s2[i];
if(s3!
if(s1[i]=='\0')
if(s3>0)
printf("%s>%s\n",s1,s2);
elseif(s3<0)
printf("%s<%s\n",s1,s2);
printf("%s=%s\n",s1,s2);
32.编写一个程序,将两个字符串连在一起,(实现stract)函数的功能;
chars1[40],s2[20],*p1,*p2;
p1=s1;p2=s2;
while(*p1)
p1++;
while(*p1++=*p2++);
puts(s1);
33.输入一个m*n的整形矩阵,将矩阵中最大的元素所在的行和最小元素所在的行互换后在输出矩阵(m,n要小于10)
intm,n,i,j,max,min,l1=0,l2=0,t;
inta[9][9];/*输入的数组的长度必须声明*/
printf(“Pleaseinputmandn:
\n”);
scanf(“%d%d”,&m,&n);
printf(“您输入的矩阵为:
for(i=0;i{for(j=0;j{scanf(“%1d”,&a[i][j]);}}max=min=a[0][0];for(i=0;i{for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
for(j=0;j{scanf(“%1d”,&a[i][j]);}}max=min=a[0][0];for(i=0;i{for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
scanf(“%1d”,&a[i][j]);
max=min=a[0][0];
for(i=0;i{for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
for(j=0;j{if(a[i][j]>max)/*if的条件后面不能加“;”*/{max=a[i][j];l1=i;}if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
if(a[i][j]>max)/*if的条件后面不能加“;”*/
max=a[i][j];
l1=i;
if(a[i][j]{min=a[i][j];l2=i;}}}for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
min=a[i][j];
l2=i;
for(j=0;j{t=a[l1][j];a[l1][j]=a[l2][j];a[l2][j]=t;}printf("变换后的矩阵为:\n");for(i=0;i
t=a[l1][j];
a[l1][j]=a[l2][j];
a[l2][j]=t;
printf("变换后的矩阵为:
for(i=0;i
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1