选做题: 编写程序输入m(m<10)个整数,完成如下功能:1)使用选择法排序将数组元素升序排序;2)输入一个整数t,将其插入到数组中,不使用排序方法使其仍为升序序列,输出插入后的升序序列。3)输入在数组中要删除的第几个数,删除指定元素,输出删除后的数组。 1 3 4 6 8 9 10 11 25 32 44 显示屏提示:please input m: 样例输入 : m integers: 显示屏提示:input the integer you want to insert: 样例输出 number delete:>
第1题
该程序的功能是:输入10个整数,将其中的前5个数从小到大排序,然后输出这10个数。
include <stdio.h>
void sort(①__________) ① _________
{int i,m,t;
for(i=0;i<n-1;i++)
for(m=i+1;m<n;m++)
if(②_________) ②_________
{t=a[m];a[m]=a[i];a[i]=t;}
}
main()
{int k,a[10];
for(k=0;k<10;k++)
scanf("%d",&a[k]);
③_________; ③_________
for(k=0;k<10;k++)
printf("%d",a[k]);
}
第2题
} void main { int arr[N],n,k; system("CLS"); proc(70,arr,&n); for(k=0;k<n;k++) if((k+1)%20==0)//每行输出20个数 { printf("%4d",arr[k]); printf("\n"); } else printf("%4d",arr[k]); printf("\n"); }
第3题
例如,输入498,则输出应该是161。
请修改程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include<stdlib.h>
include<stdio.h>
include<conio.h>
long proc(10ng m)
{
//****found****
long sum=1;
do
{
sum+=(m%10)*(m%10);
m/=l0;
//****found****
}
while(m)
return(sum);
}
void main
{
long n;
system("CLS");
printf("Please enter a number:");
scanf("%1d",&n);
printf("\n%ld\n",proc(n));
}
第4题
编写一个程序,求出两个数m和n的最大公约数和最小公倍数。 编程提示:求最大公约数的方法有三种: 1.从两个数中较小数的开始向下判断,如果找到一个整数能同时被m和n整除,则终止循环。设n为m和n中较小的数,则如下程序段可实现: for(k=n; k>=1; k--) if(m%k==0 && n%k ==0) break; k即为最大公约数。/* c5-2.c 求最大公约数算法1 */ #include "stdio.h" #include <stdlib.h> int main( ) { return 0; } 2.从整数1开始向上找,直至m和n中较小的数,每找到一个能同时被m和n整除的整数,将其存入一个变量中,当循环结束时,变量中存放的即为最大公约数。设n为m和n中较小的数,则如下程序段可实现: for(k=1; k<=n; k++) if(m%k="=0" && n%k="=0)" x="k;" 变量x的值即为最大公约数。 * c5-3.c 求最大公约数算法2 #include> #include <stdlib.h> int main( ) { return 0; } 3.用辗转相除法,即将求m和n的最大公约数问题转化为求其中的除数和两个数相除所得余数的公约数。每次循环中,先求两个数的余数,然后以除数作为被除数,以余数作为除数,当余数为0时结束循环,此时除数即为最大公约数。设m和n中n为较小的数,则可用如下程序段实现: b=m%n; while(b!=0) { m=n; n=b; b=m%n;} printf("%d\n",n); /* c5-4.c 求最大公约数算法3 */ #include <stdio.h> #include <stdlib.h> int main( ) { return 0; } 两个数的最大公约数和最小公倍数的关系为:最小公倍数=m*n/最大公约数,可利用此关系进行程序设计。
第5题
第7题
Dim ss As String
Private Sub Text1_KeyPress(KeyAscii As integer)
If chr(KeyAscii)<> ”” Then ss=ss+chr(KeyAscii)
End Sub
Private Sub Command1_Click()
Dim m As String,i As Integer
For i=Len(ss) To 1 step -1
m=m+Mid(ss,i,1)
Next
Text1.Text=Ucase(m)
End Sub
程序运行后,在文本框中输入 “ Number100 ” ,并单击命令按钮,则文本框中显示的是
A ) NUMBER 100
B ) REBMUN
C ) REBMUN 100
D ) 001 REBMUN
第8题
Private Sub Command1 Click( )
Dim n As Long
Dim flag As Boolean
n=InputBox("输入一个正整数")
S=Trim(Str(n))
For i=2 To Len(s)
If Mid(s,i-1,1)<Mid(S,i,1)Then Exit For
Next i
If i=Len(S)Then flag=True Else flag=False
If flag Then
Print n;"是降序数"
Else
Print n;"不是降序数"
End If
End Sub
运行以上程序,发现有错误,需要对给flag变量赋值的If语句进行修改。以下正确的修改是( )。
A.If i=Len(s)+1 Then flag=False Else flag=True
B.If i=Len(s)+1 Then flag=True Else flag=False
C.If i=Len(s)-1 Then flag=False Else flag=True
D.If i=Len(s)-1 Then flag=True Else flag=False
第9题
A.NUMtBER l00
B.REBMUN
C.REBM UN l00
D.001 REBMUN
为了保护您的账号安全,请在“上学吧”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!