更多"填空题
从键盘输入一组无符号整数并保存在数组xx[N]中,以整数0结"的相关试题:
[填空题]从键盘:输入一组无符号整数并保存在数组xx[N]中,以整数0结束输入,要求这些数的最大位数不超过4位,其元素的个数通过变量num传入函数fun( )。请补充函数fun( ),该函数的功能是:从数组xx中找出个位和十位的数字之和大于5的所有无符号整数,结果保存在数组yy中,其个数由函数fun( )返回。
例如:当xx[8]=<123,11,25,222,42,333,14,5451时,
bb[4]=25,42,333,5451。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
试题程序:
#include <stdio.h>
#define N 1000
int fun(int xx[ ],int bb[ ],int num)
int i,n=0;
int g,s;
for(i=0;i<num;i++)
g= 【1】 ;
s=xx[i]/10%10;
if((g+s)>5)
【2】 ;
return 【3】 ;
main( )
int xx[N];
int yy[N];
int num=0,n=0,i=0;
printf("Input number:/n");
do
scanf("%u",&xx[num]);
while(xx[num++]!=0);
n=fun(xx,yy,num);
printf("/nyy=");
for(i=0;i<n;i++)
printf("%u",yy[i]);
[填空题]数组xx[N]保存着一组4位无符号整数,其元素的个数通过变量num传入函数fun( )。请补充函数fun( ),该函数的功能是:从数组xx中找出个位和百位的数字相等的所有无符号整数,结果保存在数组yy中,其个数由函数fun( )返回。
例如:当xx[8]={1111,2413,2321,2222,4245,3333,1414, 5335}时,bb[6]={1111,2321,2222,4245,3333,1414)。
注意:部分源程序给出如下。
请勿改动主函数main 和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
试题程序:
#include<stdio. h>
#include<conio. h>
#define N 1000
int fun (int xx [], int bb [], int num)
{
int i, n=0;
int g,b;
for (i=0; i<num; i++)
{
g= 【1】 ;
b=xx [i]/100%10;
if (g==b)
【2】
}
return 【3】 ;
}
main( )
{
int xx [8] ={1111,2413, 2321, 2222, 4245,
3333,1414,5335 };
int yy[N];
int num=0, n=0, i=0;
num=8;
clrscr ( );
printf ("*****original data ******/n ");
for (i=0; i<num; i++)
printf ("%u ",xx[i]);
printf ("/n/n/n");
n=fun (xx, yy, num);
printf ("/n yy= ");
for (i=0; i<n; i++)
printf ("%u ", yy [i]);
}
[多项选择]填空题
请补充main函数,该函数的功能是:从键盘输入一个长整数,如果这个数是负数,则取它的绝对值,并显示出来。例如,输入:-3847652,结果为:3847652。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun( )的横线上填入所编写的若干表达式或语句。
试题程序:
#include
#include
main( )
{
long int n;
clrscr( );
printf("Enter the data;/n");
scanf(【1】);
printf("*** the absolute value ***/n");
if(n<0)
【2】
printf("/n/n");
printf(【3】);
}
[简答题][说明]
假定用一个整型数组表示一个长整数,数组的每个元素存储长整数的一位数字,则实际的长整数m表示为:
m=a[k]×10k-2+a[k-1]×10k-3+…+a[3]×10+a[2]
其中a[1]保存该长整数的位数,a[0]保存该长整数的符号:0表示正数、1表示负数。
运算时先决定符号,再进行绝对值运算。对于绝对值相减情况,总是绝对值较大的减去绝对值较小的,以避免出现不够减情况。注意,不考虑溢出情况,即数组足够大。
[函数]
int cmp(int *LA, int *LB);
/*比较长整数LA与LB的绝对值大小*/
/*若LA绝对值较大返回正值,LA较小返回负值,相等则返回0*/
int ADD (int *LA, int *LB, int *LC)
/*计算长整数LA与LB的和,结果存储于LC中*/
/*注意:正数与负数的和相当于正数与负数绝对值的差*/
/*数据有误返回0,正常返回1*/
if(LA == NULL || LB == NULL || LC == NULL)return 0;
int *pA, *pB, i, N, carry, flag;
flag = LA[0] + LB[0];
switch(flag) /*根据参与运算的两个数的符号进行不同的操作*/
case 0:
case 2:
Lc[0] = LA[0];/*LA与LB同号,结果符号与LA(LB)相同*/
pA = LA;
pB = LB;
(1) ;
break;
case 1: /*LA与LB异号*/
/*比较两者的绝对值大小,结果符号与较大者相同*/
flag = (2) ;
if(flag > 0) /*LA较大*/
LC[0] = LA[0];
pA = LA;
pB = LB;
else if(flag < 0)(/*LB较大*/
[填空题]下列程序中的数组a包括10个整数元素,分别将前项和后项之和存入数组b,并按每行4个元素输出数组bo请填空。
#include<stdio.h>
main( )
int a[10],b[10],i;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
______;
for(i=0;i<9;i++)
if(i%4==0)printf("/n");
printf("%3d",b[i]);
[填空题]下列程序中的数组a包括10个整数元素,分别将前项和后项之和存入数组b,并按每行4个元素输出数组b。请填空。
#include<stdio.h>
main( )
int a[10],b[10],i;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
for(i=0;i<9;i++)
______,
for(i=0;i<9;i++)
if(i%4=0)printf("/n");
printf("%3d",b[i]);
[单项选择]以下子例行程序用于实现向一维数组下标为P的数组元素处插入一个整数X
SUBROUTINE INSERT(B,N,P,X)
INTEGER B(N),X,P
DO 20 K=N-1,P,-1
B(K+1)=______
20 CONTINUE
B(P)=X
END
为使程序完整,应在______处放入( )。
A. X
B. K
C. B(P)
D. B(K)
[判断题]数组常量中的数字可以使用整数、小数或科学计数法。
[单项选择]8位二进制位能表示的最大的无符号整数等于十进制整数______。
A. 128
B. 256
C. 255
D. 127
[单项选择]无符号二进制整数00110011转换成十进制整数是
A. 48
B. 49
C. 51 D) 53
[简答题]请编写函数fun, 函数的功能是: 移动一维数组中的内容; 若数组中有n个整数, 要求把下标从0到p(含p,p小于等于n-1)的数组元素平移到数组的最后。 例如, 一维数组中的原始内容为: 1,2,3,4,5,6,7,8,9,10; p的值为3。移动后, 一维数组中的内容应为: 5,6,7,8,9,10,1,2,3,4。 注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 给定源程序: #include #define N 80 void fun(int *w, int p, int n) { } main( ) { int a[N]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}; int i,p,n=15; printf("The original data:/n"); for(i=0; i
[单项选择]用8位二进制数能表示的最大的无符号整数等于十进制整数______。
A. 255
B. 256
C. 128
D. 127