本文目录一览:
- 1、C语言中,char a1='M',a2='m';printf("%c/n,(a1,a2))的输出结果为什么是M?大神们帮帮忙
- 2、c语言问题 a2为啥子等于1
- 3、C语言中如何判断一个数组中有几个不相同的数
- 4、C语言中变量的平方怎么输入
- 5、用C语言求数列 a0,a1,a2,a3……拜托各位了 3Q
- 6、【C语言】求问这个程序为什么答案是1a2g3a? 怎么判断啊?
C语言中,char a1='M',a2='m';printf("%c/n,(a1,a2))的输出结果为什么是M?大神们帮帮忙
是m吧? 逗号表达式返回的结果是最后一个表达式的值 也就是a2 所以就显示 m了
c语言问题 a2为啥子等于1
a2=i!=j;
先判断i!=j,为真,故等于1,
a2=1,所以等于1,
你可以理解为是a2=(1!=j);
不等于的优先级比=大
C语言中如何判断一个数组中有几个不相同的数
#includestdio.h
#define N 20
void main() { int a[N],i,j,b,n;
for ( i=0;iN;i++ ) scanf("%d",a[i]);
for ( i=1,n=1;iN;i++ ) {
for ( j=0,b=0;ji;j++ ) if ( a[i]==a[j] ) {b=1;break;} //判断a[i]前面所有元素是否与a[i]相同
if ( b==0 ) n++; //第i个元素前面与a[i]不同,则b为0,可以计数,否则不计数
}
printf("%d\n",n);
}
C语言中变量的平方怎么输入
变量平方有如下三种常用的输入方法:
1
直接输入法。
这种方法是利用平方的数学定义,直接输入两个相同变量的乘法形式。
比如
int
a
=
10;
int
a2;
a2
=
a*a;
这里a2的值就是a的平方。
这种方法的好处是简单明了,而且适用于各种类型。
缺点是如果输入高次方而不是平方,比如输入10次方,就需要连续打10个a相乘,既不易输入,也不容易阅读,还容易出错。
2
利用库函数法。
在math.h中有一个库函数pow,其原型为
double
pow(double
a,
double
b);
功能是计算a的b次幂,并返回该结果。
比如这个代码:
#include math.h
#include stdio.h
int main()
{
double a = 1.23;
printf("qrt(a) = %lf\n", pow(a,2));//计算a的平方并输出
return 0;
}
该方法好处是简单易懂,对于高次幂计算同样输入简单,易于编写,阅读和维护。
缺点是只适用于浮点数,如果用于整型,会在运算中做默认的类型转换,由于精度问题,结果可能会有偏差,适用于精度要求不是太高的情况
3
使用自定义函数。
自己定义求幂函数。该方法可以用于整型求高次幂,当然也可以用于求平方。
从原理上来说,如果修改类型用于做浮点数幂运算也是可以的,不过既然有库函数pow那就没必要用自定义函数了。
参考函数如下
int qrt(int a, int b)//求a的b次幂并返回
{
int i,r=1;
for(i = 0; i b; i ++)
r *= a;//依次乘b次,即乘方的数学定义
return r;
}
函数类型及返回值根据计算需要的数据规模随时修改,可以为任意整型类型。
这样在计算乘方时可以调用该函数,调用方法和之前介绍的pow函数类似。
该种方法的缺点为需要自己写函数,代码量比前两种都要大。
以上三种方法各有优劣,根据实际需要可以自行选择。如果只是计算平方,那么推荐使用第一种方法。
用C语言求数列 a0,a1,a2,a3……拜托各位了 3Q
编好了 #include stdio.h void main() { long int a[21]; a[0]=0; a[1]=1; a[2]=1; for( int i=3;i21; i++) { a[i]=a[i-3]+2*a[i-2]+a[i-1]; printf("a%d=a%d+2a%d+a%d=%d\n",i,i-3,i-2,i-1,a[i]); } } 因为到20以后数据太大容易溢出,所以没设那么大。函数功能可以显示a3=a0+2a1+a2=3。
【C语言】求问这个程序为什么答案是1a2g3a? 怎么判断啊?
首先,注意循环条件中是赋值号(=)而不是等号(==),所以是把数组b的字符赋给数组a相应的位置,其次,每次循环中指针p移动了两次,括号内一次,括号外一次,所以数组a的字符每隔一个改变一个。