您的位置:首页 > 其它

字符简介

2015-07-22 17:21 253 查看
/*

字符串演示

*/

#include <stdio.h>

int main() {

//char str[] = "abc";

//char str[3] = {'a', 'b', 'c'};

//char str[3] = {'a', 'b', 'c', '\0'};

char str[] = {'a', 'b', 'c', '\0'};

printf("%p\n", "abc");

printf("%p\n", "abc");

printf("%p\n", "ab""c");

printf("%c\n", *"abc");

printf("%hhd\n", *("abc" + 3));

printf("sizeof(str)是%d\n", sizeof(str));

return 0;

}

/*

字符串演示

*/

#include <stdio.h>

#include <string.h>

int main() {

char str[20] = "abc";

printf("有效字符个数是%d\n", strlen("abcdef"));

printf("%s\n", strcat(str, "xyz"));

printf("%s\n", str);

printf("比较结果是%d\n", strcmp("abc", "abd"));

printf("%s\n", strcpy(str, "tuv"));

printf("%s\n", str);

return 0;

}

/*

字符串演示

*/

#include <stdio.h>

#include <string.h>

int main() {

char str[10] = {};

printf("请输入一个字符串:");

//scanf("%s", str);

fgets(str, 10, stdin);

printf("字符串是%s\n", str);

if (strlen(str) == 9 && str[8] != '\n') {

scanf("%*[^\n]");

scanf("%*c");

}

printf("请输入一个字符串:");

fgets(str, 10, stdin);

printf("字符串是%s\n", str);

return 0;

}

/*

strcat作业

*/

#include <stdio.h>

char *mystrcat(char *dest, const char *src) {

char *dest1 = dest;

const char *src1 = src;

//查找'\0'字符位置

while (*dest1) {

dest1++;

}

//复制有效字符

while (*src1) {

*dest1 = *src1;

dest1++;

src1++;

}

*dest1 = 0;

return dest;

}

int main() {

char str[20] = "abc";

printf("%s\n", mystrcat(str, "xyz"));

//printf("%s\n", str);

return 0;

}

/*

字符串作业

*/

#include <stdio.h>

#include <string.h>

const char *getnum(const char *src, int *p_num) {

const char *src1 = src;

*p_num = 0;

do {

//每次把一个数字字符合并到

//转换成的数字中

*p_num = 10 * *p_num + *src1 - '0';

src1++;

} while (*src1 >= '0' && *src1 <= '9');

return src1;

}

int main() {

int res = 0, num = 0;

char opr = '+';

char buf[100] = {};

const char *p_start = buf;

//获得表达式

printf("请输入一个计算公式:");

fgets(buf, 100, stdin);

if (strlen(buf) == 99 && buf[98] != '\n') {

scanf("%*[^\n]");

scanf("%*c");

}

//按顺序从前到后处理表达式内容

//每次提取一个数字

while (*p_start) {

p_start = getnum(p_start, &num);

if (opr == '+') {

res += num;

}

else {

res -= num;

}

if (!*p_start) {

break;

}

else {

opr = *p_start;

p_start++;

}

}

printf("计算结果是%d\n", res);

return 0;

}

/*

模拟登陆练习

*/

#include <stdio.h>

#include <string.h>

int main() {

char buf[10] = {};

int num = 0;

//每次循环进行一次登陆

for (num = 1;num <= 3;num++) {

//获得用户名并和正确用户名比较

printf("请输入用户名:");

fgets(buf, 10, stdin);

if (strlen(buf) == 9 && buf[8] != '\n') {

scanf("%*[^\n]");

scanf("%*c");

}

if (strcmp(buf, "admin\n")) {

continue;

}

//获得密码并和正确密码比较

printf("请输入密码:");

fgets(buf, 10, stdin);

if (strlen(buf) == 9 && buf[8] != '\n') {

scanf("%*[^\n]");

scanf("%*c");

}

if (strcmp(buf, "123456\n")) {

continue;

}

//登陆成功则退出循环

break;

}

if (num <= 3) {

printf("登陆成功\n");

}

else {

printf("登陆失败\n");

}

return 0;

}

/*

多个相关字符串演示

*/

#include <stdio.h>

int main() {

//char countries[][10] = {"China", "Russia",
"America", "England", "France"};

char *countries[] = {"China", "Russia",

"America", "England", "France"};

int num = 0;

for (num = 0;num <= 4;num++) {

printf("%s\n", countries[num]);

}

return 0;

}

/*

二级指针演示

*/

#include <stdio.h>

int main() {

int num = 0;

int *p_num = #

int **pp_num = &p_num;

printf("pp_num是%p\n", pp_num);

printf("*pp_num是%p\n", *pp_num);

printf("**pp_num是%d\n", **pp_num);

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: