请教 C语言一段代码?
这样就可以了,每次不一样
rand()是计算机内的一个生成伪随机数的,生成的其实并不是随机数,而是具有一定规律的递推出来的数要在rand()前面加上sand(time(0))
代码如下:
给一段C语言代码!
#include stdio.h
int main(int argc, char *argv[])
{
int i,j,k,n;
printf(“请输入需要打印的图形的行数:”);
scanf(“%d”,n);
if(n%2==0) /*分成上下两部分,输入数值n/2 */
n=n/2;
else
n=n/2+1;
for (i=1;i=n;i++) /*输出上半三角形 */
{
for (j=n;ji;j–)
printf(” “);
for (k=0;k2*i-1;k++)
printf(“*”);
printf(“\n”);
}
/* 输出下半三角形*/
for (i=n-1;i0;i–)
{
for (j=n;ji;j–)
printf(” “);
for (k=0;k2*i-1;k++)
printf(“*”);
printf(“\n”);
关于一段C语言代码。。求解!
Puts输出的两句英语的意思是
该程序的作用是将整型以二进制码输出
一段特别诡异的C语言代码 求大神告知
你发的这段程序,int flag放到你标记的两个位置都是一样的。但是我觉得应该放到下面的这个位置更合理:
#define A(X) ((t[X]-‘0’))
int main()
{
int i,j,N,m;
char t[3];
//int flag=0;
scanf(“%d”,m);
for(j=1;j=m;j++)
{
int flag=0;//应该放到这里来!!!!
scanf(“%d”,N);
printf(“Case %d:\n”,j);
for(i=100;i1000;i++)
{
sprintf(t,”%d”,i);
if((A(0)+A(1))*2+A(2)==N)
{
printf(“%c%c%c%c%c\n”,t[0],t[1],t[2],t[1],t[0]);
flag++;
}
}
for(i=100;i1000;i++)
{
sprintf(t,”%d”,i);
if((A(0)+A(1)+A(2))*2==N)
{
printf(“%c%c%c%c%c%c\n”,t[0],t[1],t[2],t[2],t[1],t[0]);
flag++;
}
}
if(flag==0)printf(“-1\n”);
}
}
还可以优化为以下程序:
#define A(X) ((t[X]-‘0’))
int main()
{
int i,j,N,m,flag;
char t[3];
scanf(“%d”,m);
for(j=1;j=m;j++)
{
printf(“Case %d:\n”,j);
flag=0;
scanf(“%d”,N);
for(i=100;i1000;i++)
{
sprintf(t,”%d”,i);
if((A(0)+A(1))*2+A(2)==N||(A(0)+A(1)+A(2))*2==N)
{
printf(“%c%c%c”,t[0],t[1],t[2]);
if((A(0)+A(1)+A(2))*2==N)printf(“%c”,t[2]);
printf(“%c%c\n”,t[1],t[0]);
flag++;
}
}
if(flag==0)printf(“-1\n”);
}
}