'全國青少年軟件編程等級考試C語言經典程序題10道九'

C語言 軟件 機器人包老師 2019-08-07
"
"
全國青少年軟件編程等級考試C語言經典程序題10道九


全國青少年軟件編程等級考試C語言經典程序題10道九

【程序81】

題目:809*??=800*??+9*??+1 其中??代表的兩位數,8*??的結果為兩位數,9*??的結果為3位數。求??代表的兩位數,及809*??後的結果。

1.程序分析:

2.程序源代碼:

output(long b,long i)

{ printf("\\n%ld/%ld=809*%ld+%ld",b,i,i,b%i);

}

main()

{long int a,b,i;

a=809;

for(i=10;i<100;i++)

{b=i*a+1;

if(b>=1000&&b<=10000&&8*i<100&&9*i>=100)

output(b,i); }

}

==============================================================

【程序82】

題目:八進制轉換為十進制

1.程序分析:

2.程序源代碼:

main()

{ char *p,s[6];int n;

p=s;

gets(p);

n=0;

while(*(p)!='\\0')

{n=n*8+*p-'0';

p++;}

printf("%d",n);

}

==============================================================

【程序83】

題目:求0—7所能組成的奇數個數。

1.程序分析:

2.程序源代碼:

main()

{

long sum=4,s=4;

int j;

for(j=2;j<=8;j++)/*j is place of number*/

{ printf("\\n%ld",sum);

if(j<=2)

s*=7;

else

s*=8;

sum+=s;}

printf("\\nsum=%ld",sum);

}

==============================================================

【程序84】

題目:一個偶數總能表示為兩個素數之和。

1.程序分析:

2.程序源代碼:

#include "stdio.h"

#include "math.h"

main()

{ int a,b,c,d;

scanf("%d",&a);

for(b=3;b<=a/2;b+=2)

{ for(c=2;c<=sqrt(b);c++)

if(b%c==0) break;

if(c>sqrt(b))

d=a-b;

else

break;

for(c=2;c<=sqrt(d);c++)

if(d%c==0) break;

if(c>sqrt(d))

printf("%d=%d+%d\\n",a,b,d);

}

}

==============================================================

【程序85】

題目:判斷一個素數能被幾個9整除

1.程序分析:

2.程序源代碼:

main()

{ long int m9=9,sum=9;

int zi,n1=1,c9=1;

scanf("%d",&zi);

while(n1!=0)

{ if(!(sum%zi))

n1=0;

else

{m9=m9*10;

sum=sum+m9;

c9++;

}

}

printf("%ld,can be divided by %d \\"9\\"",sum,c9);

}

==============================================================

【程序86】

題目:兩個字符串連接程序

1.程序分析:

2.程序源代碼:

#include "stdio.h"

main()

{char a[]="acegikm";

char b[]="bdfhjlnpq";

char c[80],*p;

int i=0,j=0,k=0;

while(a[i]!='\\0'&&b[j]!='\\0')

{if (a[i] { c[k]=a[i];i++;}

else

c[k]=b[j++];

k++;

}

c[k]='\\0';

if(a[i]=='\\0')

p=b+j;

else

p=a+i;

strcat(c,p);

puts(c);

}

==============================================================

【程序87】

題目:回答結果(結構體變量傳遞)

1.程序分析:

2.程序源代碼:

#include "stdio.h"

struct student

{ int x;

char c;

} a;

main()

{a.x=3;

a.c='a';

f(a);

printf("%d,%c",a.x,a.c);

}

f(struct student b)

{

b.x=20;

b.c='y';

}

==============================================================

【程序88】

題目:讀取7個數(1—50)的整數值,每讀取一個值,程序打印出該值個數的*。

1.程序分析:

2.程序源代碼:

main()

{int i,a,n=1;

while(n<=7)

{ do {

scanf("%d",&a);

}while(a<1||a>50);

for(i=1;i<=a;i++)

 printf("*");

printf("\\n");

n++;}

getch();

}

==============================================================

【程序89】

題目:某個公司採用公用電話傳遞數據,數據是四位的整數,在傳遞過程中是加密的,加密規則如下:

每位數字都加上5,然後用和除以10的餘數代替該數字,再將第一位和第四位交換,第二位和第三位交換。

1.程序分析:

2.程序源代碼:

main()

{int a,i,aa[4],t;

scanf("%d",&a);

aa[0]=a%10;

aa[1]=a%100/10;

aa[2]=a%1000/100;

aa[3]=a/1000;

for(i=0;i<=3;i++)

 {aa[i]+=5;

 aa[i]%=10;

 }

for(i=0;i<=3/2;i++)

 {t=aa[i];

 aa[i]=aa[3-i];

 aa[3-i]=t;

 }

for(i=3;i>=0;i--)

printf("%d",aa[i]);

}

==============================================================

【程序90】

題目:專升本一題,讀結果。

1.程序分析:

2.程序源代碼:

#include "stdio.h"

#define M 5

main()

{int a[M]={1,2,3,4,5};

int i,j,t;

i=0;j=M-1;

while(i {t=*(a+i);

*(a+i)=*(a+j);

*(a+j)=t;

i++;j--;

}

for(i=0;i printf("%d",*(a+i));

}【程序91】

題目:時間函數舉例1

1.程序分析:

2.程序源代碼:

#include "stdio.h"

#include "time.h"

void main()

{ time_t lt; /*define a longint time varible*/

lt=time(NULL);/*system time and date*/

printf(ctime(<)); /*english format output*/

printf(asctime(localtime(<)));/*tranfer to tm*/

printf(asctime(gmtime(<))); /*tranfer to Greenwich time*/

}

==============================================================

"
全國青少年軟件編程等級考試C語言經典程序題10道九


全國青少年軟件編程等級考試C語言經典程序題10道九

【程序81】

題目:809*??=800*??+9*??+1 其中??代表的兩位數,8*??的結果為兩位數,9*??的結果為3位數。求??代表的兩位數,及809*??後的結果。

1.程序分析:

2.程序源代碼:

output(long b,long i)

{ printf("\\n%ld/%ld=809*%ld+%ld",b,i,i,b%i);

}

main()

{long int a,b,i;

a=809;

for(i=10;i<100;i++)

{b=i*a+1;

if(b>=1000&&b<=10000&&8*i<100&&9*i>=100)

output(b,i); }

}

==============================================================

【程序82】

題目:八進制轉換為十進制

1.程序分析:

2.程序源代碼:

main()

{ char *p,s[6];int n;

p=s;

gets(p);

n=0;

while(*(p)!='\\0')

{n=n*8+*p-'0';

p++;}

printf("%d",n);

}

==============================================================

【程序83】

題目:求0—7所能組成的奇數個數。

1.程序分析:

2.程序源代碼:

main()

{

long sum=4,s=4;

int j;

for(j=2;j<=8;j++)/*j is place of number*/

{ printf("\\n%ld",sum);

if(j<=2)

s*=7;

else

s*=8;

sum+=s;}

printf("\\nsum=%ld",sum);

}

==============================================================

【程序84】

題目:一個偶數總能表示為兩個素數之和。

1.程序分析:

2.程序源代碼:

#include "stdio.h"

#include "math.h"

main()

{ int a,b,c,d;

scanf("%d",&a);

for(b=3;b<=a/2;b+=2)

{ for(c=2;c<=sqrt(b);c++)

if(b%c==0) break;

if(c>sqrt(b))

d=a-b;

else

break;

for(c=2;c<=sqrt(d);c++)

if(d%c==0) break;

if(c>sqrt(d))

printf("%d=%d+%d\\n",a,b,d);

}

}

==============================================================

【程序85】

題目:判斷一個素數能被幾個9整除

1.程序分析:

2.程序源代碼:

main()

{ long int m9=9,sum=9;

int zi,n1=1,c9=1;

scanf("%d",&zi);

while(n1!=0)

{ if(!(sum%zi))

n1=0;

else

{m9=m9*10;

sum=sum+m9;

c9++;

}

}

printf("%ld,can be divided by %d \\"9\\"",sum,c9);

}

==============================================================

【程序86】

題目:兩個字符串連接程序

1.程序分析:

2.程序源代碼:

#include "stdio.h"

main()

{char a[]="acegikm";

char b[]="bdfhjlnpq";

char c[80],*p;

int i=0,j=0,k=0;

while(a[i]!='\\0'&&b[j]!='\\0')

{if (a[i] { c[k]=a[i];i++;}

else

c[k]=b[j++];

k++;

}

c[k]='\\0';

if(a[i]=='\\0')

p=b+j;

else

p=a+i;

strcat(c,p);

puts(c);

}

==============================================================

【程序87】

題目:回答結果(結構體變量傳遞)

1.程序分析:

2.程序源代碼:

#include "stdio.h"

struct student

{ int x;

char c;

} a;

main()

{a.x=3;

a.c='a';

f(a);

printf("%d,%c",a.x,a.c);

}

f(struct student b)

{

b.x=20;

b.c='y';

}

==============================================================

【程序88】

題目:讀取7個數(1—50)的整數值,每讀取一個值,程序打印出該值個數的*。

1.程序分析:

2.程序源代碼:

main()

{int i,a,n=1;

while(n<=7)

{ do {

scanf("%d",&a);

}while(a<1||a>50);

for(i=1;i<=a;i++)

 printf("*");

printf("\\n");

n++;}

getch();

}

==============================================================

【程序89】

題目:某個公司採用公用電話傳遞數據,數據是四位的整數,在傳遞過程中是加密的,加密規則如下:

每位數字都加上5,然後用和除以10的餘數代替該數字,再將第一位和第四位交換,第二位和第三位交換。

1.程序分析:

2.程序源代碼:

main()

{int a,i,aa[4],t;

scanf("%d",&a);

aa[0]=a%10;

aa[1]=a%100/10;

aa[2]=a%1000/100;

aa[3]=a/1000;

for(i=0;i<=3;i++)

 {aa[i]+=5;

 aa[i]%=10;

 }

for(i=0;i<=3/2;i++)

 {t=aa[i];

 aa[i]=aa[3-i];

 aa[3-i]=t;

 }

for(i=3;i>=0;i--)

printf("%d",aa[i]);

}

==============================================================

【程序90】

題目:專升本一題,讀結果。

1.程序分析:

2.程序源代碼:

#include "stdio.h"

#define M 5

main()

{int a[M]={1,2,3,4,5};

int i,j,t;

i=0;j=M-1;

while(i {t=*(a+i);

*(a+i)=*(a+j);

*(a+j)=t;

i++;j--;

}

for(i=0;i printf("%d",*(a+i));

}【程序91】

題目:時間函數舉例1

1.程序分析:

2.程序源代碼:

#include "stdio.h"

#include "time.h"

void main()

{ time_t lt; /*define a longint time varible*/

lt=time(NULL);/*system time and date*/

printf(ctime(<)); /*english format output*/

printf(asctime(localtime(<)));/*tranfer to tm*/

printf(asctime(gmtime(<))); /*tranfer to Greenwich time*/

}

==============================================================

全國青少年軟件編程等級考試C語言經典程序題10道九

"

相關推薦

推薦中...