for (int i = 1; i < strlen(s) - 1; i++)严重性 代码 说明 项目 文件 行 禁止显示状态 警告 C4018 “<”: 有符号/无符号不匹配 二叉树3 E:\数据结构实验\二叉树3\源.cpp 161
时间: 2024-05-07 22:20:13 浏览: 11
这个警告是因为在比较字符数组长度时,`strlen()`函数返回的是无符号整型,而你的`i`是有符号整型,导致类型不匹配。可以将`i`的类型改为无符号整型`size_t`来解决这个问题:
```c++
for (size_t i = 1; i < strlen(s) - 1; i++)
```
或者使用`strlen()`的返回值类型转换为有符号整型:
```c++
for (int i = 1; i < (int)strlen(s) - 1; i++)
```
相关问题
debug#include<stdio.h> #include<string.h> int strlshift(char *s,int n) { int i,j=0; char ch[100]; for(i=strlen(s)-n-1;i<strlen(s);i++); ch[j++]=s[i]; for(i=0;i<strlen(s)-n-1;i++) ch[j++]=s[i]; for(i=0,j=0;i<strlen(s);i++) s[i]=ch[j]; } int main() { int n; char a[100]; gets(a); scanf("%d",&n); strlshift(a,n); puts(a); return 0; }
这段代码有一个问题:
```
for(i=strlen(s)-n-1;i<strlen(s);i++);
ch[j++]=s[i];
```
应该改为:
```
for(i=strlen(s)-n;i<strlen(s);i++)
ch[j++]=s[i];
```
因为原来的写法中,for循环后面跟了一个分号,导致循环内的语句没有被执行,所以ch数组没有被正确赋值。
请优化一下这个代码:#include<bits/stdc++.h> using namespace std; int main(){ int n,k,sum,m=0; char a[100]={}; cin>>n>>k; for(int i=1;i<=n;++i){ sum=0; for(int j=1;j<i;++j) if(i%j==0) sum+=j; if(sum==i) a[m++]=i; } if(strlen(a)==0) cout<<"None"<<endl; else for(int j=0;j<strlen(a);++j){ printf("%d",a[j]); if(j!=strlen(a)-1) cout<<endl; } return 0; }
#include <iostream>
#include <vector>
int main() {
int n, k;
std::cin >> n >> k;
std::vector<int> perfectNumbers;
for (int i = 1; i <= n; ++i) {
int sum = 0;
for (int j = 1; j < i; ++j) {
if (i % j == 0) {
sum += j;
}
}
if (sum == i) {
perfectNumbers.push_back(i);
}
}
if (perfectNumbers.empty()) {
std::cout << "None" << std::endl;
} else {
for (int j = 0; j < perfectNumbers.size(); ++j) {
std::cout << perfectNumbers[j];
if (j != perfectNumbers.size() - 1) {
std::cout << std::endl;
}
}
}
return 0;
}
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)