河南科技大学C语言试题.docx
《河南科技大学C语言试题.docx》由会员分享,可在线阅读,更多相关《河南科技大学C语言试题.docx(22页珍藏版)》请在冰豆网上搜索。
河南科技大学C语言试题
C程序的运行环境和简单C源程序的调试,实验报告(共题),用时(127分33秒),成绩(A)
1、有如下程序:
#include"stdio.h"
main()
{inta=8;
printf("%d,%5d,%-5d####\n",a,a,a);
printf("%d,%o,%x,%u",a,a,a,a);
}
第二个printf语句的运行结果是_______________。
你的答案:
8,10,8,8√
2、有如下程序:
#include"stdio.h"
main()
{charc1='a',c2='b';inta=97,b=98;
printf("%d,%d\n",a,b);
printf("%c,%c",c1,c2);
}
最后一个printf语句的运行结果是_______________。
你的答案:
a,b√
3、有如下程序:
#include"stdio.h"
main()
{inti,j;i=3;j=4;
printf("%d%d\n",i++,++j);
printf("%d,%d\n",i,j);
printf("%d,%d\n",-i++,-++j);
}
最后一个printf语句的运行结果是_______________。
你的答案:
-4,-6√
4、有如下程序:
#include"stdio.h"
main()
{inta=7;
floatx=2.5,y=4.7,z;
z=x+a%3*(int)(x+y)%2/4;
printf("%f\n",z);}
程序的运行结果是______________。
你的答案:
2.500000√
思考题分数:
60分,源代码分数:
40分。
应提交源代码:
5个,实际提交源代码:
5个。
Copyright?
2006Allrightsreserved 河南科技大学
建议使用:
800×600以上分辨率IE4.0以上版本浏览器
顺序结构程序设计,实验报告(共题),用时(48分21秒),成绩(A)
1、从键盘上输入:
3218,运行结果是_______________。
#include"stdio.h"
main()
{inti,j;
printf("Enteri,j\n");
scanf("%d%d",&i,&j);
printf("i=%d,j=%d\n",i,j);
}
你的答案:
i=32,j=18√
2、如果下面程序运行结果是i=12.5,j=-4.0,从键盘应输入:
_______________。
#include"stdio.h"
main()
{floati,j;
scanf("i=%f,j=%f",&i,&j);
printf("i=%.1f,j=%.1f\n",i,j);
}
你的答案:
i=12.5,j=-4.0√
3、输入一个大写字母A,将它转换为小写字母a,输出小写字母a及对应的ASCII值97。
要求输出格式为:
j=a,j=97。
输出语句应为________________。
#include"stdio.h"
main()
{chari,j;
scanf("%c",&i);
j=i+32;
输出语句;
}
你的答案:
printf("j=%c,j=%d",j,j);√
4、将a,b两个变量的值交换后,要求按“a=2,b=1”格式输出。
划线处应当填写:
__________________。
#include"stdio.h"
main()
{inta=1,b=2,t;
t=a;
a=b;
b=t;
______________;
}
你的答案:
printf("a=%d,b=%d",a,b);√
思考题分数:
60分,源代码分数:
40分。
应提交源代码:
5个,实际提交源代码:
5个。
Copyright?
2006Allrightsreserved 河南科技大学
建议使用:
800×600以上分辨率IE4.0以上版本浏览器
选择结构程序设计,实验报告(共题),用时(84分39秒),成绩(A)
1、下面程序的功能是实现表达式z=(x>=y?
x:
y),请将程序填写完整。
#include"stdio.h"
main()
{intx,y,z;
printf("Pleaseinputx,y:
");
scanf("%d%d",&x,&y);
if(______)z=x;
elsez=y;
printf("z=%d",z);
}
你的答案:
x>=y√
2、下面程序的运行结果为_______________。
#include"stdio.h"
main()
{inta=3,b=5,c=8;
if(a++<3&&c--!
=0)b=b+1;
printf("a=%d,b=%d,c=%d\n",a,b,c);
}
你的答案:
a=4,b=5,c=8√
3、程序填空,从键盘上输入x的值,按下式计算y的值。
┌xx<1
y=┤2x-11≤x<10
└3x-11x≥10
#include"stdio.h"
main()
{floatx,y;
printf("x=");
scanf("%f",&x);
if(________)y=x;
elseif(x<10&&x>=1)
y=2*x-1;
else
y=3*x-11;
printf("y=%f\n",y);
}
你的答案:
x<1√
4、下面程序运行时从键盘上输入15,20,运行结果为_______________。
#include"stdio.h"
main()
{inta,b,t;
t=0;
scanf("%d,%d",&a,&b);
if(a>b)
t=a;
a=b;
b=t;
printf("b=%d",b);
}
你的答案:
b=0√
思考题分数:
60分,源代码分数:
40分。
应提交源代码:
5个,实际提交源代码:
5个。
Copyright?
2006Allrightsreserved 河南科技大学
建议使用:
800×600以上分辨率IE4.0以上版本浏览器
循环结构程序设计
(一),实验报告(共题),用时(23分36秒),成绩(A)
1、求两个正整数x和y的最大公约数,请填空。
#include
#include
main()
{intx,y,t,i;
scanf("%d,%d",&x,&y);
if(x>y){t=x;x=y;y=t;}
for(_______________)
{if(x%i==0&&y%i==0)
break;
}
printf("MaximalCommonDivisoris:
%d\n",i);
}
你的答案:
i=x;i>=1;i--√
2、计算1到100之间的奇数之和及偶数之和。
请填空。
#include"stdio.h"
main()
{inta,b,c,i;
a=0,c=0;/*变量赋初值*/
for(i=0;i<=100;i+=2)
{a+=i;/*变量a存放偶数的和*/
_______________;
c+=b;/*变量c存放奇数的和*/
}
printf("SumofEvensis%d\n",a);
printf("SumofOddsis%d\n",c-101);
}
你的答案:
b=i+1√
3、下面程序的功能是:
计算正整数num的各位上的数字之和。
例如,若输入:
252,则输出应该是:
9;若输入:
202,则输出应该是:
4。
请将程序补充完整。
#include
main()
{intnum,k;
k=0;
printf("Pleaseenteranumber:
");
scanf("%d",&num);
do
{k=____________;
num/=10;
}while(num);
printf("\n%d\n",k);
}
你的答案:
k+num%10√
4、求两个正整数[m,n]之间所有既不能被3整除也不能被7整除的整数之和。
请填空。
#include
#include
main()
{intm,n,i,t;
longints=0;
scanf("%d,%d",&m,&n);
if(m>n)
{t=m;m=n;n=t;}
for(_______________)
if(i%3!
=0&&i%7!
=0)
s+=i;
printf("Sumis:
%ld\n",s);
}
你的答案:
i=m;i<=n;i++√
思考题分数:
60分,源代码分数:
40分。
应提交源代码:
5个,实际提交源代码:
5个。
Copyright?
2006Allrightsreserved 河南科技大学
建议使用:
800×600以上分辨率IE4.0以上版本浏览器
循环结构程序设计
(二),实验报告(共题),用时(1分30秒),成绩(A)
1、下面程序的功能是:
输出以下图形:
*-------------->在第11列
***
*****
请把程序补充完整。
#include"stdio.h"
main()
{inti,j,k;
for(i=0;i<=2;i++)
{for(j=0;j<10-i;j++)printf("");
for(k=0;_______________;k++)printf("*");
printf("\n");
}
}
你的答案:
k
2、下面函数的功能是求出100~300间的素数和,请把程序补充完整。
#include"stdio.h"
main()
{inti,j,flag,sum=0;
for(i=100;i<=300;i++)
{flag=0;
for(j=2;j<=i-1;j++)
if(i%j==0){flag=1;break;}
if(________)sum+=i;
}
printf("Thesumis%d\n",sum);
}
你的答案:
flag==0√
3、下面函数的功能是输出九九乘法表,请把程序补充完整。
#include"stdio.h"
main()
{inti,j;
for(i=1;i<=9;i++)
{for(j=1;__________;j++)
printf("%d*%d=%-4d",i,j,i*j);
printf("\n");}
}
你的答案:
j<=i√
4、根据公式:
e=1+1/1!
+1/2!
+1/3!
+.......+1/n!
+.....,计算e的近似值,请把程序补充完整。
#include"stdio.h"
main()
{longintn,j;
floatsum=1,t;
for(n=1;n<=20;n++)
{t=1.0;
for(j=1;j<=n;j++)
t=t*j;
________________;
}
printf("%10.2f\n",sum);
}
你的答案:
sum=sum+1/t√
思考题分数:
60分,源代码分数:
40分。
应提交源代码:
5个,实际提交源代码:
5个。
一维数组程序设计,实验报告(共题),用时(2分9秒),成绩(A)
1、定义一个数组名为ftop且有5个int类型元素的一维数组,同时给每个元素赋初值为0,请写出数组的定义语句_________
你的答案:
intftop[5]={0};√
2、下面程序的功能是:
为一维数组a中的元素赋值,并按照逆序输出。
请在程序中的横线上填入正确的内容。
#include"stdio.h"
voidmain()
{inti,a[10];/*定义循环变量i和一维数组a*/
for(i=0;i<=9;i++)
scanf("%d",&a[i]);
for(_________;i>=0;i--)
printf("%d",a[i]);/*按照逆序输出*/
printf("\n");
}
你的答案:
i=9√
3、下面程序的功能是:
输出一维数组a中的最小值及其下标。
请在程序中的横线上填入正确的内容。
#include"stdio.h"
main()
{inti,p=0,a[10];/*定义a为数组名,p为下标名*/
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=1;i<10;i++)
if(a[i]_________;
printf("%d,%d",a[p],p);/*输出一维数组a中的最小值及其下标*/
}
你的答案:
p=i√
4、下面程序的功能是:
求一维数组中下标为偶数的元素之和并输出。
请在程序中的横线上填入正确的内容。
#include"stdio.h"
voidmain()
{inti,sum=0;
inta[]={2,3,4,5,6,7,8,9};
for(i=0;i<8;_________)
sum+=a[i];
printf("sum=%d\n",sum);
}
你的答案:
i+=2√
思考题分数:
60分,源代码分数:
40分。
应提交源代码:
5个,实际提交源代码:
5个。
Copyright?
2006Allrightsreserved 河南科技大学
建议使用:
800×600以上分辨率IE4.0以上版本浏览器
二维数组程序设计,实验报告(共题),用时(3分48秒),成绩(A)
1、定义一个5行5列的二维数组a,使主对角线(含主对角线)下的所有元素初始化为1,在划线处填空。
inti,j,a[5][5];
for(i=0;i<5;i++)
for(j=0;j<5;j++)
if(_________)a[i][j]=1;
你的答案:
i>=j√
2、求一个4×4矩阵的主对角线元素之和
#include"stdio.h"
voidmain()
{inta[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};
inti,sum=0;
for(i=0;i<4;i++)
_________;
printf(“sum=%d\n”,sum);
}
你的答案:
sum+=a[i][i]√
3、求二维数组a中的最大元素及其下标,填空并运行程序。
#include"stdio.h"
voidmain()
{inta[4][4]={{1,2,3,4},{3,4,5,6},{5,6,7,8},{7,8,9,10}};
inti,j,max,l,c;
max=a[0][0];
for(i=0;i<4;i++)
for(j=0;j<4;j++)
if(maxprintf(“max=%d,l=%d,c=%d%\n”,max,l,c);
}
你的答案:
max=a[i][j]√
4、统计3个学生,每个学生4门课程的考试成绩,要求输出每个学生的总成绩,每个学生的平均成绩,3个学生的总平均成绩,填空并运行程序。
#include"stdio.h"
voidmain()
{intstu[3][4],i,j,t[3];
floata[3],sum=0;
for(i=0;i<3;i++)
for(j=0;j<4;j++)
scanf("%d",&stu[i][j]);
for(i=0;i<3;i++)
{t[i]=0;
for(j=0;j<4;j++)
{sum+=stu[i][j];
t[i]+=stu[i][j];
}
printf("%-6d",t[i]);
_________;
printf("%-6.2f\n",a[i]);
}
printf("average=%.2f\n",sum/12.0);
}
你的答案:
a[i]=(float)t[i]/4√
思考题分数:
60分,源代码分数:
40分。
应提交源代码:
5个,实际提交源代码:
5个。
Copyright?
2006Allrightsreserved 河南科技大学
建议使用:
800×600以上分辨率IE4.0以上版本浏览器
字符数组程序设计,实验报告(共题),用时(8分45秒),成绩(A)
1、1.下面程序运行的结果是:
________________
#include"stdio.h"
voidmain()
{chara[11]={’I’,'','a’,'m’,'','a’,'','b’,'o’,'y’};
printf("%s\n",a);}
你的答案:
Iamaboy√
2、2.下面的程序用来实现将两个字符串连接起来。
请将源程序补充完整,
#include"stdio.h"
voidmain()
{charstr1[100],str2[100];
inti=0,j=0;
printf("pleaseinputthestring1:
");
gets(str1);
printf("pleaseinputthestring2:
");
gets(str2);
for(i=0;str1[i]!
='\0';i++);
for(j=0;str2[j]!
='\0';j++)
{str1[i]=str2[j];
i++;}
_____________;
printf("thecatenatedstringis%s",str1);
}
你的答案:
str1[i]=’\0’√
3、3.下面程序的功能是用strcat函数实现将字符串2连接到字符串1的后面并输出,请补充完整。
#include"stdio.h"
#include"string.h"
voidmain()
{charstr1[80]="ThisIsa",str2[80]="cProgram";
printf("String1is:
%s\n",str1);
printf("String2is:
%s\n",str2);
_____________;
printf("Resultis:
%s\n",str1);
}
你的答案:
strcat(str1,str2)√
4、4.下面的程序用来实现将一个字符串中的所有大写字母转换为小写字母并输出。
请将源程序补充完整。
例如,当字符串为"ThisIsacProgram"
输出:
"thisisacprogram"
#include"stdio.h"
voidmain()
{charstr[80]="ThisIsacProgram";
inti;
printf("Stringis:
%s\n",str);
for(i=0;str[i]!
='\0';i++)
if(str[i]>='A'&&str[i]<='Z')
________________;
printf("Resultis:
%s\n",str);
}
你的答案:
str[i]=str[i]+32√
思考题分数:
60分,源代码分数:
40分。
应提交源代码:
5个,实际提交源代码:
5个。
Copyright?
2006Allrightsreserved 河南科技大学
建议使用:
800×600以上分辨率IE4.0以上版本浏览器
函数,实验报告(共题),用时(0分30秒),成绩(A)
1、下面程序的功能是:
判别一个整数数组中各元素的值,若大于0则输出该值,若小于或等于0则输出0值。
请在程序中的横线上填入适当的内容,将程序补充完整。
#include"stdio.h"
voidnzp(intv)
{inti=0;
if(v>0)printf("%d",v);
elseprintf("%d",i);
}
voidmain()
{inta[5],i;
printf("input5numbers\n");
for(i=0;i<5;i++)
{scanf("%d",&a[i]);
______________}
}
你的答案:
nzp(a[i]);√
2、一维数组a中的元素为:
1,4,2,7,3,12,5,34,5,9。
下面程序的功能是:
求一维数组a中的最大元素及其下标。
程序的输出应为:
Themaxis:
34,positionis:
7。
请在程序中的横线上填入适当的内容,将程序补充完整。
#include
intmax;
intfun(intarr[],intn)
{intpos,i;
max=arr[0];
pos=0;
for(i=1;i