C语言编程题:输入一个正整数 repeat (0<repeat<10),做 repeat 次下列运算: C语言 输入一个正整数repeat(0<repeat<10)...

作者&投稿:东寇 (若有异议请与网页底部的电邮联系)

1、确定程序结构

程序需要两层循环嵌套,读取repeat后进入第一层循环,第一次循环用于确定读取的字符串数,第二层循环用于读取字符和修正数据。程序框图如下图所示:

2、确认程序使用变量及类型

根据程序需求可以确定所需变量及类型(如下图所示),此处应注意通过循环读取字符并同步统计,故仅需要使用一个char存储字符。

3、完成程序设计

此处调试时发现读取repeat后需要使用getchar()去除缓存区存在的字符'
'避免对实际输入造成影响。

4、程序调试检验

程序运行第一行为输入repeat,即读取输入字符串数。第2、4、6行为输入的字符串,其中BCD为大写辅音字母,共三个;第3、5、7行为输出计数结果,与实际情况一致,该程序基本符合要求。

经测试,该程序通过以循环读取字符对输入字符串进行处理的方法可处理含空格等特殊字符的字符串,输出字符串中大写辅音字母的个数。处理的字符串数通过repeat确定。

若需要规定repeat的输入范围,则可以在读取repeat后判断其值大小。



#include <stdio.h>
#include <string.h>
void main()
{
int i,j,n,k=0,repeat;
char str[80];
scanf("%d",&repeat);
gets(str);
for(i=1;i<=repeat;i++)
{
printf("输入字符串: ");
gets(str);
n=strlen(str);
for(j=0;j<n;j++)
if(str[j]>='B'&&str[j]<='Z'&&str[j]!='E'&&str[j]!='I'&&str[j]!='O'&&str[j]!='U')
k++;
printf("大写辅音字母个数: %d
",k);
k=0;
}
}


c语言 输入一个正整数 repeat (0<repeat<10),做repeat 次下列运算 ?~

#include

int main() {

int fib[25] = {1, 1};
for (int i = 2; i <= 24; i++)
fib[i] = fib[i - 1] + fib[i - 2];

int repeat,m,n;
scanf("%d", &repeat);
while(repeat--){
scanf("%d %d",&m,&n);
for(int i=0;i<25;i++){
if(fib[i]>=m&&fib[i]<=n)
printf("%d ",fib[i]);
}
putchar('
');
}
return 0;
}

源代码如下:
#include void sign(int x)
{
if (x > 0)
{
printf("sign(%d)=1
", x);
}
else if(x < 0)
{
printf("sign(%d)=-1
", x);
}
else
{
printf("sign(%d)=0
", x);
}
void main()
{
int num = 0, x;
int i;
scanf("%d", &num);
for (i = 0; i < num; i++)
{
scanf("%d", &x)
sign(x);
}

扩展资料
1、repeat循环是一种无条件循环,它需要在循环体中设置终止条件,并使用break语句进行退出。
2、repeat结构控制方式比较特别,当进入循环体后,直到until条件为真时才结束,而其它语言的do-while是当条件为假时才结束循环。