case 1:printf(\ case 2:printf(\ case 3:printf(\ case 4:printf(\ case 5:printf(\ case 6:printf(\ default:printf(\ } }
第6章 循环结构程序设计
6 习题
一、选择题
BCDDA BDBAB BC
二、阅读程序写出运行结果 1、______3,4________ 2、_____6_____ 3、___##___ 4、___02____ 5、___18_____ 6、_____1______ 7、___80____
8、___输出一行中含大写或小写字母个数中的大者数________ 9、
1)5次
21 2 2) 2次
13 6 4 4
3)外循环2次,内2层循环累计3次,内3层循环累计5次
28
4)外循环3次,内循环累计4次
-1 -10 5
三、编程题 略
实验6 循环结构程序设计
二、实验内容 1.改错题
16
下列程序的功能为:倒序打印26个英文字母。纠正程序中存在的错误,以实现其功能。
#include
char x; x='z';
while(x!='a') while(x!='a'-1)或while(x>='a') {
printf(\ x++; x- -; } }
2. 程序填空题
1)
#include
int day,x1,x2; day=0; x1=1020; while (x1) {
X2=x1/2-2; X1=x2; day++; }
printf(“day=%d\\n”,day); } 2)
#include
int i,left,right;char cc[80]; printf(\输入一个算术表达式\\n\ gets(cc);
left = 0;right = 0;//left和right分别代表统计的左右括号数 for(i=0;i<(int)strlen(cc);i++){ if( cc[i]=='(' ) left++; if( cc[i]==')' ) right++; if( right>left ) break; }
if (left==right) printf(\圆括号配对正确\\n\
17
else printf(\圆括号配对不正确\\n\} 三、编程题
(1)计算1~100之间所有含8的数之和。
参考程序:
#include
int i, sum=0;
for(i=1; i<=100; i++) if(i==8 || i/10==8) sum+=i;
printf(\}
(2)编写程序,利用下列近似公式计算e值,误差应小于10-5。
1111e?1????…?
n!1!2!3!参考程序:
#include
main() {
int i=0 ; long n=1;
float e=0, t=1; while(t>1e-5) {
e+=t; i++; n*=i; t=1.0/n; }
printf(\}
(3)某学校有近千名学生,在操场上排队,若5人一行余2人,7人一行余3人,3人一行余1人。编写程序,求该校的学生总人数。
参考程序:
#include
for(i=900;i<=1000;i++) if(i%5==2&&i%7==3&&i%3==1) break;
printf(\学生总人数=%d\\n\ }
18
(4)从键盘输入N个学生的学号和每人M门课程的成绩,计算每个学生的总分及平均分。输出内容包括每个学生的学号、总分和平均分。
#include
int i,j,n,m,no,score,sum; float ave;
printf(\输入学生数和每人课程数:\ scanf(\for(i=1;i<=n;i++) { sum=0;
printf(\输入第%d个学生的学号: \ scanf(\
printf(\输入第%d个学生的%d门课程成绩: \ for(j=1;j<=m;j++) {
scanf(\ sum+=score; }
ave=(float)sum/m;
printf(\第%d个学生的学号为:%d 总分为:%d 平均分
为:%.2f\\n\\n\
} }
第7章 数组及其应用
7 习题
一、选择题
DACBC ABDBD
二、阅读程序写出运行结果 1、______4______ 2、____ Tony _____
3、____ max=85,min=5,sum=180,aver=30.0_____________
4、____ a=2 b=2 c=2 d=2 e=1 f=2 g=2____
5、____j=45_____ 三、编程题
1.略 2.
19
#include
int a[10];//用来存数据 int i,j,temp;
for(i = 0; i < 10; i ++)//输入10个数。 scanf(\
for (j = 0; j < 9; j++)//标准冒泡法排序 for (i = 0; i < 9- j; i++) {
if(a[i] > a[i + 1]) {
temp = a[i];
a[i] = a[i + 1]; a[i + 1] = temp; } }
for(i = 0; i < 10; i ++)//输出。 printf(\ printf(\ return 0; }
实验7 数组及其应用
二、实验内容 1.改错题
#include
char a[8]=\ int i,n=0;
while (a[n]) n++;
for(i=0;b[i]!='\\0';i++) a[n+i]=b[i]; a[n+i]='\\0'; //n=0;
//while (a[n]) {putchar(a[n]);n++;} printf(\}
2. 程序填空题
#include
20