百科知识

用C语言写各位大哥大姐帮帮忙小弟感激不尽谢谢了!

2008-11-16 15:06:00s***
用C语言写各位大哥大姐帮帮忙小弟感激不尽谢谢了!:#includestdio.h main() { int a,b,n,i; //a是前两位的数?

最佳回答

  • #include<stdio.h> main() { int a,b,n,i; //a是前两位的数字,b是后两位的数字for(a=0;a<=9;++a) { for(b=0;b<=9;++b) { n=a*1100+b*11; //因为前两位和后两位是相同的for(i=1;i<=100;++i) { if(n==i*i) //如果这4位车牌是i的平方,则满足条件{ printf("车号为%d%d%d%d",a,a,b,b); //输出} } } } }
    2008-11-16 20:53:00
  •   #include<stdio。h>#include<math。
      h>int main(){ int buf[4]; int num; memset(buf,0,5); num=0; for(num=1000;num!=10000;++num){ int i=sqrt(num); buf[0]=(num%10)/1; buf[1]=(num%100)/10; buf[2]=(num%1000)/100; buf[3]=(num%10000)/1000; if(buf[0]==buf[1] && buf[2]==&buf[3] && i*i==num){ printf("ret:%d\n",num); break; } } return 0;}。
    2008-11-18 08:47:00
  •   #include"stdio。
      h"void get_result(){ int number[4];/*数组中每一个元素用来保存车牌的每一位*/ int i[4];/*循环控制变量*/ int j,k; int num; printf("所有可能的车牌号码是:\n\n"); for(k=0;k<100;k++){ for(i[0]=0;i[0]<10;i[0]++){ number[0]=i[0]; for(i[1]=0;i[1]<10;i[1]++){ if(i[1]==i[0]) number[1]=i[1];/*如果找到与千位数相同的数字,则令百位数等于千位数*/ else continue;/*如果百位上的数与千位上的数不同,则跳出本次循环,下面也是如此*/ for(i[2]=0;i[2]<10;i[2]++){ if(i[2]!=i[1]) number[2]=i[2];/*如果找到入百位数不同的数字,则令十位数等于该数*/ else continue; for(i[3]=0;i[3]<10;i[3]++){ if(i[3]==i[2]){ number[3]=i[3];/*如果找到与个位数相同的数组,则令个位数等于该数*/ num=number[0]*1000+number[1]*100+number[2]*10+number[3];/*求出这个四位数,并将其保存在num中*/ if(num==k*k){/*如果num这个四位数是某个数的平方,则输出车牌号码*/ printf("车牌号码为:"); for(j=0;j<4;j++) printf("%d",number[j]); printf("\n"); } } } } } } }}/*打印输出结果*/void main(){ get_result();}//部分比较难懂的部分,我已经帮你解释了,其他稍微容易些的地方,相信你也可以看懂了。
    2008-11-16 16:59:00
  • 很赞哦! (230)