A. int N=5,b[N][N]; B. int a[1][2]={{1},{3}}; C. int c[2][]= {{1,2},{3,4}}; D. int d[3][2]={{1,2},{34}}; 6.有以下程序 main()
{ int m[][3]={1,4,7,2,5,8,3,6,9}; int i,j,k=2;
for(i=0; i<3; i++)
{ printf(\}
执行后输出结果是______。 [C]
A. 4 5 6 B. 2 5 8 C. 3 6 9 D. 7 8 9 7.以下程序的输出结果是_______。 main()
{ int b[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1; for(i=0;i<3;i++)
for(j=i;j<=i;j++) t=t+b[i][b[j][j]]; printf(\}
[B]
A. 3 B. 4 C. 1 D. 9
8.设int a[][4]={1,2,3,4,5,6,7,8,9};则数组a的第一维的大小是 [B]
A. 2 B. 3 C. 4 D. 无确定值 9.以下程序的输出结果是_________ main()
{ int a[3][3]={ {1,2},{3,4},{5,6} },i,j,s=0; for(i=1;i<3;i++)
for(j=0;j<=i;j++)s+=a[i][j]; printf(\}
[A]
A. 18 B. 19 C. 20 D. 21 10.有以下程序 main()
{ int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}}; int i,s=0;
for(i=0;i<4;i++) s+=aa[i][1]; printf(\}
程序运行后的输出结果是______。 [B]
A. 11 B. 19 C. 13 D. 20
2分2分2分2分2分
二、程序填空题 (5分)
1. 输出以下图形:
1 2 2 2 2 2 1 3 1 2 2 2 1 4 3 3 1 2 1 4 4 3 3 3 1 4 4 4 3 3 1 5 1 4 4 3 1 5 5 5 1 4 1 5 5 5 5 5 1 #include
{ int a[7][7]; int i,j;
for (i=0;i<7;i++) for (j=0;j<7;j++)
{ if (__(1)__) a[i][j]=1;
else if (i
for (i=0;i<7;i++) { for (j=0;j<7;j++)
printf(\ printf(\ }
}
(1)答案 2分
i == j || i + j == 6
(2)答案 2分
a[i][j]=2
(3)答案 1分
i
三、程序设计题 (20分)
1. 输出矩阵中每行最大值 题目描述
10分
输入一个3行5列的矩阵数据,输出矩阵中每行最大值. 输入描述
输入3行5列共15个整数。 输出描述
输出每行的最大值。每个最大值占一行 样例输入 6 7 8 2 8 0 -3 4 5 9
5 6 1 2 0 样例输出 8 9
6
【参考答案】
#include
{ int a[3][5],i,j,max; for(i=0;i<3;i++) for(j=0;j<5;j++)
scanf(\ for(i=0;i<3;i++) {
max=a[i][0]; // 每行第一个元素作为找该行最大值的初始值 for(j=1;j<5;j++)
if(max
2. 计算对角线元素和 题目描述 求一个 N×N(N不超过10) 矩阵两条对角线上元素之和(每个元素只加一次)。 输入描述
输入一个整数表示矩阵的阶数,再输入矩阵的内容,设元素值均为整数。 输出描述
输出其对角线元素之和(每个元素只加一次) 【参考答案2】 样例输入 #include if(i==j || i+j==n-1) // 对角线元素 sum+=a[i][j]; } printf(\} 5 6 9 4 9 7 8 3 5 1 7 6 样例输出 输出样例1: 27 输出样例2: 51 【参考答案3】 #include sum+=a[i][i]; // 加主对角线元素 if(i!=n-1-i) sum+=a[i][n-1-i]; // 加副对角线元素 } printf(\} C语言2作业8 一、选择题 (20分) 1.下面程序的输出结果是____。#include { int n[3][3], i, j; for(i=0;i<3;i++ ) for(j=0;j<3;j++ ) n[i][j]=i+j; for(i=0;i<2;i++ ) for(j=0;j<2;j++ ) n[i+1][j+1]+=n[i][j]; printf(\} [C] A. 14 B. 0 C. 6 D. 不确定 2.下面程序的输出结果是____。 2分 #include { int a[4][5]={1,2,4,-4,5,-9,3,6,-3,2,7,8,4}; int i,j,n; n=9; i=n/5; j=n-i*5-1; printf(\} [B] A. 6 B. -3 C. 2 D. 不确定 3.若有定义char st[20]=\,则st中所存放字符串的长度和数组st的长度分别是____。 [C] A. 20和20 B. 13和20 C. 5和20 D. 9和9 4.若有定义char s[]=\,则s中所存放的字符串的长度是____。 [A] A. 9 B. 12 C. 13 D. 14 5.若有定义和语句: char s[10]; s=\; 则结果是_____。 [D] A. 输出 abcd B. 输出 a C. 输出 adcb D. 编译不能通过 6.若给出以下定义: char x[]=\ char y[]={'a','b','c','d','e','f','g'}; 则正确的叙述为_____。 [C] A. 数组x和数组y等价 B. 数组x和数组y的长度相同 C. 数组x的长度大于数组y的长度 D. 数组y的长度大于数组x的长度 7.下面程序的输出结果是____。 #include { char s[]=\ int v[4]={0},k,i; for (k=0;s[k]!='\\0';k++){ switch(s[k]) { case '1':i=0; case '2':i=1; case '3':i=2; case '4':i=3; } v[i]++; 2分2分2分2分2分