C语言之指针

1、编写一个程序计算一个字符串的长度。

#include<stdio.h>

#include<string.h>

int main()

{

char s[40];

gets(s);

int c=strlen(s);

printf("%d",c);

return 0;

}

2、编一程序,将字符串中第m表字符开始的字符子串复制成另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。

#include <stdio.h>

void copySubstring(char source[], int m, char destination[]);

int main() {

char inputString[100], copiedString[100];

int m;

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

scanf("%s", inputString);

printf("请输入 m 的值: ");

scanf("%d", &m);

copySubstring(inputString, m, copiedString);

printf("复制结果: %s\n", copiedString);

return 0;

}

void copySubstring(char source[], int m, char destination[]) {

int i = m - 1;

int j = 0;

while (source[i] != '\0') {

destination[j] = source[i];

i++;

j++;

}

destination[j] = '\0';

}

3、编写一个函数,从键盘输入10个数存入数组data[10]中,同时设置一个指针变量p指向数组data,然后通过指针变量p对数组按照从小到大的顺序排序,最后输出其排序结果。

#include <stdio.h>

void sortArray(int *p, int size);

int main() {

int data[10];

printf("请输入10个整数:\n");

for (int j = 0; j < 10; j++) {

scanf("%d", &data[j]);

}

int *p = data;

sortArray(p, 10);

printf("排序结果:\n");

for (int i = 0; i < 10; i++) {

printf("%d ", data[i]);

}

return 0;

}

void sortArray(int *p, int size) {

for (int i = 0; i < size - 1; i++) {

for (int j = 0; j < size - 1 - i; j++) {

if (*(p + j) > *(p + j + 1)) {

int temp = *(p + j);

*(p + j) = *(p + j + 1);

*(p + j + 1) = temp;

}

}

}

}

相关推荐
拼好饭和她皆失10 小时前
数学知识:质数相关讲解——质数判定,分解质因数及筛质数
算法·质数·数学知识
想进个大厂10 小时前
代码随想录day35 36
算法·leetcode·职场和发展
BackCatK Chen10 小时前
第十三章 C 语言中的存储类别、链接与 内存管理
c语言·内存管理·static·extern·存储类别·malloc 动态内存
xqqxqxxq10 小时前
洛谷算法1-2 排序(NOIP经典真题解析)java(持续更新)
java·开发语言·算法
嵌入小生00710 小时前
数据结构 | 常用排序算法大全及二分查找
linux·数据结构·算法·vim·排序算法·嵌入式
近津薪荼10 小时前
优选算法——滑动窗口4(找子串)
c++·学习·算法
2301_8223776510 小时前
模板代码异常处理
开发语言·c++·算法
hcnaisd210 小时前
基于C++的游戏引擎开发
开发语言·c++·算法
多恩Stone10 小时前
【3DV 进阶-12】Trellis.2 数据处理脚本细节
人工智能·pytorch·python·算法·3d·aigc
wfeqhfxz258878210 小时前
【目标检测系列】:基于YOLOv10n的MAN卡车超载检测系统·结合FasterCGLU与WFU优化算法_1
算法·yolo·目标检测