当前位置:首页 » 编程语言 » 171用c语言编程
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

171用c语言编程

发布时间: 2022-06-03 05:29:51

c语言入门好简171用今天是今年第几天

第14行应为sum+=days[i-1];

❷ 用c语言编程

提示:
第一题:
方法1、你用while(){};控制语句,再在外层for()就好了。至于()里的条件,while中做素数判断,而for()中()做是否再次循环寻找素数的判断。
方法2、用while();在while内的语句中使用continue。
算法好简单,我就说个框架
while()
{。。。。。
if(condition)
//这里的condition指的是if的具体条件,这个自己定
{printf(condition)
;
continue;
}
}
第二题:
方法1、cos()就是三角函数cos(X),在VC++6.0(或VS)编译环境下,你用C语言内部函数就好了,步骤如下:
#include<stdio.h>
#include<math.h>
//
这一步调用C语言内部函数,这样就可以直接使用cos()进行计算。
至于cos(x)=1-x^2/2!+x^3/3!-x^4/4!+......-x^10/10!嘛,其实就是【(-1)^(n-1)乘以x^n】再除以【n!】。只不过你这个题目中1<=n<=10而已。
对于{【(-1)^(n-1)乘以】再除以【n!】}的求解,关键在于x^n和10!,(注:(-1)^(n-1)无非就是x=-1,然后n变成了n-1),所以只要求x^n和10!就好了。算法如下:
----------针对x^n--------
sanf("%d",&x);
sum=1;
/*定义这个中间量sum,接收x,并多次将x的乘积也接受了。sum等于1是方便后面求解。*/
for(n=1;n<=max;n++)
//提示,你这个题目中max=10
{
sum=x*sum;}
----------针对10!--------
那就更简单了。框架是:
sum=1;
for(n=1;n<=max;n++)
{
sum=n*sum;}
方法2
:
利用C语言库函数power就好了。
第三题:
上面的那位小哥回答了第三题,我略略的看了下,思想上讲完全正确!参考那个吧。

❸ C语言编程题

#include <stdio.h>
int p_number(int x,int y)
{
int i,num=0;
for(i=x+1;i<y;i++) //因为要求的是输入的两数之间的数,不包括输入
if(i%3==0) // 的两数,所以用i=x+1表示,i%3表示能被3整除的数
{ num++;
printf("%d ",i);
}
printf("\n");
return num;
}
main()
{
int n1,n2,i,num=0;
printf("请出入任意两个数:\n");
scanf("%d,%d",&n1,&n2); // 将键盘输入的两个数字赋给变量,n1和n2
if(n1>n2) //将小数放在n1中,大数放在n2中,是为了
{ //后面的函数调用是的方便
i=n1;
n1=n2;
n2=i;
}
num=p_number(n1,n2); //调用函数:n1为小数,n2为大数
printf("数%d和数%d之间能被3整除的是有:%d个\n",n1,n2,num);
}

❹ C语言入门好简171第2

#include<stdio.h>
intmain()
{
inta[2][3],b[3],c[3],i,j,z;

for(i=0;i<2;i++)//对二维数组a进行赋值
for(j=0;j<3;j++)
{
printf("请输入第%d行,第%d列的数:",i+1,j+1);
scanf("%d",&a[i][j]);
}
printf(" ");

printf("二维数组a的值为: ");//输出二位数组
for(i=0;i<2;i++)
for(j=0;j<3;j++)
{
printf("%d ",a[i][j]);
if(j==2)
printf(" ");
}

printf(" ");
for(j=0,z=0,i=0;j<3;j++)//将二维数组第一行赋值给数组b
{
b[z]=a[i][j];
z++;
}

for(j=0,z=0,i=1;j<3;j++)//将二维数组第二行赋值给数组c
{
c[z]=a[i][j];
z++;
}

printf("一维数组b的值为: ");//输出数组b
for(z=0;z<3;z++)
{
printf("%d ",b[z]);
}
printf(" ");

printf("一维数组c的值为: ");//输出数组c
for(z=0;z<3;z++)
{
printf("%d ",c[z]);
}
printf(" ");

return0;
}

数组matrix_2_1和matrix_2_2相当于数组b和c,你理解就行

❺ 用C语言编写1-2000000之间所有含有7的数字

void main()
{
long i;
int j,len;
char ch[10];
for(i=1;i<2000000;i++)
{
ltoa(i,ch,10);
len=strlen(ch);
for(j=0;j<len;j++)
if(ch[j]=='7')
{
printf("%ld ",i);
break;
}
}
}

❻ 用c语言怎么编程

#include<stdio.h>
#defineexp1e-6
#definemax64
doublefib[max];
intmain(void)
{
inti;fib[0]=fib[1]=1.0;
for(i=2;i<max;i++)
fib[i]=fib[i-1]+fib[i-2];

doubleans=1.0;
for(i=3;i<max;i++)
{
doubleindex=fib[i-2]/fib[i];
if(i&1)index=-index;
//printf("%.2f%.2f%.2f ",fib[i-2],fib[i],index);
ans+=index;
}
printf("%f ",ans);
return0;
}

❼ c语言:编程打印2-170之间的所有素数。要求每行输出13个素数。

定义一个J=0;,用来计数。
从2开始,设个大循环,从2到170for(i=2;i<171;i++){
if(j=13;换行;j=0)
k=2;
while(i除以k不等于0且k小于i的一半)k++;
if k大于i的一半,输出i;j++;
}

❽ C语言指针问题171

回复楼主:gets 要求传入的指针要指向一块合法的内存,也就是说

char* s[20] ;
// 这里要给 s[0] 分配内存,当然对s[1],s[2]..也一样
s[0] = (char*)malloc(100);
gets(s[0]) ;

如果不分配内存,那么s[0]将指向一块非法的内存,对非法的内存区域进行操作这样会造成无法控制的结果(比如崩溃)。比如有时候程序出现“非法操作”被系统关闭,很多就是内存管理不当造成的。

-------------------------------
没用过gets,但是参考MSDN,似乎传入gets的指针,应该指向一个合法并且足够大的内存。你的程序里,并没有为s[i]分配空间。程序逻辑上有没有问题自己调试吧。

Example
/* GETS.C */

#include <stdio.h>

void main( void )
{
char line[81];

printf( "Input a string: " );
gets( line );
printf( "The line entered was: %s\n", line );
}

Output
Input a string: Hello!
The line entered was: Hello!