c语言中的if和指针

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言中的if和指针相关的知识,希望对你有一定的参考价值。

我在学习c语言的看到这个 fun(char *a)if(*a)</p><p>fun(a+1);</p><p>printf("%c",*a);这是什么意思????

fun(char *a) if(*a) // 判断a是否指向’\0’,即是否到了字符串末尾。 fun(a+1); printf("%c",*a); /*fun是一个自定义函数,默认返回类型为int,形参为一个字符串,a指向其首地址。函数采用递归调用的方式实现将字符串逆序输出。*/</p> 参考技术A if(*a)//*a表示取指针a的内容。这句话是如果a的内容不是0(C中假就是一个0,当然有其他的叫法)的话就执行if下面的 参考技术B 如果a字符不是空则输出其后的所有字符。没有出口,会出错的。

C语言指针问题171

以下程序统计从终端输入的字符中每个大写字母出现的次数,num[0]用来统计字母A出现的次数,其他依次类推。用#号结束输入,请填空。
#include"stdio.h"
#include"ctype.h"
main()

int num[26]=0,i;
char c;
while(_____!='#')
if(isupper(c)) num[_____]+=1;
for(i=0;i<26;i++)
if(num[i]) printf("%c:%d\n",i+'A',num[i]);

两个填空应该怎么填呢?谢谢你们了。

参考技术A 第一个空应该是(c = getchar()) ,取得从终端输入的字符;
至于第二个空,因为A对应的下标是0,所以其他大写字母所对应的下标是
c-'A'。
参考技术B 1. (c=getchar()) != '#'

2. num[ c-'A' ]+=1本回答被提问者采纳
参考技术C 1. (c=getchar()) != '#'

2. num[ c-'A' ]+=1
参考技术D (c=getchar())!='#'

num[c-65]+=1;

以上是关于c语言中的if和指针的主要内容,如果未能解决你的问题,请参考以下文章

C语言指针问题

C语言:if(条件) 条件是一个指针变量,它啥时候为真?

C语言中如何显示指针所指向的数

C语言指针问题171

c语言中使用指针求一组数组的最小值!只要最小值!!

C语言中malloc函数的使用方法是啥?