以下程序段给数组所有的元素输入数据,请选择正确答案填入( )。 #include<stdio.h

以下程序段给数组所有的元素输入数据,请选择正确答案填入( )。 #include<stdio.h,第1张

#include<stdio.h>

#include<stdlib.h>

int main()

{

int a[10],i=0

while(i<10)

scanf("%d",a+i++)

i=0

while(i<10)

printf("%d\t",*(a+i++))

system("pause")

}

scanf函数输入表应该是地址表,数组名是地址常量,a + i++ 是基地址a加偏移量i,本身是地址量。

&a[i+1] i 值没有变化,循环不能停止。

a+ii 值没有变化,循环不能停止。

&a[++i] i 因为先加 1 ,数组最后一个值放在a[9]后面的位置,数组已经超界。

它们在语法上没有错误,但运行时会出问题,是属于动态错误。这道题目出的很好。

答案在里面:

下面程序的功能是多次输入x与y的值,并求x与y之积,请填空完善程序。

int mul(int a,int b)

{int c

c=a+b

return (c*c-a*a-b*b)/2 //如果题目是求和 改为return c你 *** 错了吧

}

void main()

{ int x,y,z

scanf("%d%d",&x,&y)

while(x!=0)

{ z=mul(x,y)

printf("%d*%d=%d",x,y,z)

scanf("%d%d",&x,&y)

}

}

以下程序打印如下图案,程序运行后,输入4给变量n,请填空。

*

* * *

* * * * *

* * * * * * *

#include<stdio.h>

#define S ' '

void main()

{ int n,i,j

printf("Enter n:")scanf("%d",&n)

for(i=1i<=ni++)

{ for(j=1 j<=n j++)putchar(S)

for(j=1 j<=n*2j++)putchar('*')

putchar('\n')

}

}

以下函数返回a所指数组中最小的值所在的下标值,请把程序补充完整。

fun(inta[] , int n)

{int i,j=0,p

p=j

for(i=ji<ni++)

if(a[i]<a[p])_ _ p=i___

return(p)

}

7、以下程序段给数组所有的元素输入数据,输出所有元素之和。请将正确答案填入。

#include<stdio.h>

main()

{ int a[10],i=0,s=0

while(i<10)

{ scanf("%d", &a[i]

s=s+a[i]

i =i+1

}

printf("%d",s)

}

8、 下面程序用于计算1+(1+2)+(1+2+3)+……+(1+2+3+……+10),请填空完善函数。

#include<stdio.h>

void main()

{ int total,sum,m,n

total=0

for(m=1m<=10m++)

{ sum=0

for(n=1n<=mn++)

sum=sum+n

total= total+sum

}

printf("total=%d\n",total)

}

以下程序的功能是:键盘上输入若干个学生的成绩, 统计并输出最高成绩和最低成

绩,当输入负数时结束输入.请填空.

main()

{ float x,amax,amin

scanf("%f",&x)

amax=x

amin=x

while(x>=0 )

{ if(x>amax)amax=x

if( x<ammin ) amin=x

scanf("%f",&x)

}

printf("\namax=%f\namin=%f\n",amax,amin)

}

12、下面程序将一个已知字符串第n个字符开始的剩余字符复制到另一个字符串中。请填空完善程序。

#include"string.h"

#include<stdio.h>

main()

{char a[80],b[80],*p,*q

int n,k

gets(a) scanf("%d",&n)

p=a q=b

p+=n-1

while(*p!= '\0' )

{*q=*p

q++p++

}

*q = '\0'

puts(b)

}

13、设以下程序段的输出结果为15,请将正确答案填入。

#include<stdio.h>

#define MIN(x,y) (x)<(y)? (x):(y)

main()

{ int i=15, kfloat j=1.5

k=10*(MIN( i, j))

printf("%d\n",k)}

以下程序用来统计文件中字符个数。请填空:

#include"stdio.h"

main( )

{FILE *fp; long num=0L;

if((fp=fopen("fname.dat","r")==NULL)

while(_______!feof(fp)_________)

printf("num=%ld\n",num-1);

fclose(fp);

}

16、以下程序输入一行字符,判断其是否对称,是则输出Yes,否则输出No。

#include <stdio.h>

#include <string.h>

main()

{

char a[80]int n, i

gets( a )

n = strlen(a)

for ( i = 0i <n/2i++ )

if ( a[i] != a[n-1-i] )

break

if ( i==n/2 )

printf( "No\n" )

else

printf( "Yes\n" )

}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11997679.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-20
下一篇2023-05-20

发表评论

登录后才能评论

评论列表(0条)

    保存